имеем массив
double a[10]={1,2,3,4,5,6,7,8,9,10};
какова вероятность выпадения каждого?
55=1+2+3+4+5+6+7+8+9+10;
double b[10]={1/55,2/55,3/55,4/55,5/55,6/55,7/55,8/55,9/55,10/55};
те вероятность выпадения [0] в 10 раз меньше чем [9].
теперь разметим массив где эти вероятности будут отображены
double с[10]={1,3,6,10,15,21,28,36,45,55};
теперь при выпадении чисел от 1 до 55, если ранд55 <= c[x], то имеем нужный индекс.
для того чтоб работало и для отрицательных чисел нужно сдвинуть значения на 1-с[0].
теперь посмотрим изменяться ли вероятности при изменении чисел...
double a[10]={2,4,6,8,10,12,14,16,18,20};
какова вероятность выпадения каждого?
110=2+4+6+8+10+12+14+16+18+20;
2/110==1/55double b[10]={1/55,2/55,3/55,4/55,5/55,6/55,7/55,8/55,9/55,10/55};
те вероятность выпадения [0] в 10 раз меньше чем [9],
вероятность выпадения не изменилась,
т.к. она измеряется относительно среднего рассчитанного по всему массиву.
В статье автор расскажет об эволюционных вычислениях с использованием генетического алгоритма собственной реализации. Будет показано на примерах функционирование алгоритма, даны практические рекомендации по его использованию.
Если прямо тут перевести в подобие "техзадания", то нужна функция, на вход берущая массив и возвращающая
второй массив (int), элементы которого являются индексами элементов входного массива, расположенными
по убыванию (возрастанию).
В идеальном случае сделать перегрузки для всех стандартных типов + CObject (при обязательном требовании
к реализации функции Compare() у наследников CObject). Хотелось бы и для структур, но похоже на стороне
разработчика никак не решаемо - виртуальных функций у структур нет (и не надо!), т.е. юзерскую функцию
Compare() не пришить, а "стандартное" отношение порядка для структур, естественно, не определено.
扇形的宽度不能与数组中的数值相匹配,否则该算法将无法对所有数字起作用。
重要的是这些数字之间的距离。所有数字与第一个数字的距离越远,它们就越不可能掉出来。在本质上,我们推迟在一条直线上的酒吧成比例的数字之间的距离,调整的因素为0.01,所以,最后一个数字的概率下降不等于0,因为从第一个最远的。系数越高,各部门就越平等。excel文件附在后面,用它来实验。
1.理论概率的计算在EXCEL中给出。第一个数字是最高概率,最后一个数字是最低概率,但不等于0。
2)对于任何一组数字来说,扇形的负数都不会发生,前提是这组数字是按降序排序的--第一个数字是最大的(这组数字中最大的但却是负数,它也会起作用)。
我不明白,但我已经喜欢你对概率论的处理方法,用一个关键的短语表达:"数字之间的距离很重要。所有的数字与第一个数字相距越远,它们掉出来的可能性就越小......",第二步(检查镜头):"你是建议在数组中 随机挑选一个元素 吗?- 它没有考虑到数组数字之间的距离,所以你的方法是无用的"。 合法的问题:洗脑是磨练程序编写逻辑的必修课吗? 我最好保持一个业余的编码者,这对我的健康更好。
如果你精通概率论,那么轮盘赌的逻辑--在0到36的范围内随机生成数字(如果轮盘赌是传统的,欧洲的,没有美式的双零,等等)。
我不明白,但我已经喜欢你对概率论的处理方法,用关键的一句话表达:"数字之间的距离很重要。所有的数字离第一个数字越远,它们掉出来的可能性就越小......",第二条(检查镜头):"你建议直接从阵列中 随机选择一个元素?- 它没有考虑到数组数字之间的距离,所以你的方法是无用的"。 合法的问题:洗脑是磨练程序编写逻辑的必修课吗? 我最好保持一个业余的编码者,这对我的健康更好。
如果你对概率论很在行,那么轮盘赌的逻辑--随机数字发生器的范围是0到36(如果是正规的欧洲轮盘赌,没有美式的双零等......)。
实际上,赌场轮盘赌只不过是一个比喻,在这个主题中至少有三个人已经上当了。
实际上,赌场轮盘赌只不过是一个比喻,在这个主题中至少有三个人已经上当了。
- 是的,是的,我明白了!伊索的语言。
- 对不起,这是从哪里来的?
- 是的,是的,我明白了!伊索的语言。
- 对不起,我没听清,这是从哪里来的?
扇形的宽度不能与数组中的数值相匹配,否则该算法将无法对所有数字起作用。
重要的是这些数字之间的距离。所有数字与第一个数字的距离越远,它们就越不可能掉出来。在本质上,我们推迟在一条直线上的酒吧成比例的数字之间的距离,调整的因素为0.01,所以,最后一个数字的概率下降不等于0,因为从第一个最远的。系数越高,各部门就越平等。excel文件附在后面,用它来实验。
1.理论概率的计算在EXCEL中给出。第一个数字是最高概率,最后一个数字是最低概率,但不等于0。
2)对于任何一个数字集来说,负的扇形大小都不会发生,只要这个数字集是按降序排序的--第一个数字是最大的(对数字集中最大的数字也会起作用,但也是一个负数)。
这不是一个正确的说法,IMHO。
第二,每个周期需要计算一次概率数组与[],所以我们应该把这个函数拆成RoletteEpoh()和RoletteRand()。
虽然朱棣文在一开始就提到了这一点。
但你可以通过搜索c[]数组中的放弃值来获得加速本身。
你可以使用标准的biblio,即快速搜索方法。
而你最好从MQL5中的电子表格 这篇文章中采取其重做的方法。
如果你想对具有非递减值的排序数组进行快速搜索,请使用具有递增值的标准数组(我可能是错的,我已经有一段时间没有翻阅标准数组了)。
罗伯特-沙克雷?
我建议我们在这里讨论最优算法逻辑构建的问题
"算法逻辑的优化构建 "的问题--它更像是编码方法和技术的改进...还是我错了?
一个一般性质的主题。
"如果有人怀疑他们的算法在 速度(或清晰度) 方面有最佳逻辑,欢迎他们来。"
而具体来说,我的任务是"......请建议一个更快的变体......"。更快!更快我不是在问我的算法是对是错,在这种情况下,我只需要更快的速度,也就是说,如果有人提出另一种算法的变体,它应该产生与我相同的结果,而不是其他。而出于某种原因,每个人都开始考虑他自己的事情。
好了,我的提速 任务已经解决了。:)
- 是的,是的,我明白了!伊索的语言。
- 对不起,我没听清,这是从哪里来的?