![]() |
1
6
这听起来像轮盘赌,主要用于遗传/进化算法中的选择过程。 |
![]() |
2
2
您可以创建目标数组,然后通过单词循环确定它应该被选取的概率,并根据随机数替换数组中的单词。 第一个词的概率是f。 零 /m 零 (M) n = f 零 +++f n ,即100%,因此目标阵列中的所有位置都将填充w 零 . 对于下面的单词,概率下降,当您到达最后一个单词时,目标数组将填充随机选取的符合频率的单词。 C中的示例代码:
|
![]() |
3
1
好的,我找到了另一个算法: the alias method (也提到) in this answer )基本上,它创建了概率空间的一个划分,这样:
因为所有分区的大小都相同,所以选择可以在恒定工作中完成的分区(从
这种分区存在的原因是存在一个词
给这样一对
在中构造此分区
如果分区数为
在任何情况下,该算法只需要
红宝石:
|
![]() |
Dazcii · 如何找到3个嵌套循环的复杂性 7 年前 |
![]() |
Kodean · Java:循环字符串长度时间复杂性 7 年前 |
![]() |
screeb · 依赖于收敛的算法的大O 7 年前 |
![]() |
f1sh3r0 · 从图中确定渐近增长率 7 年前 |
![]() |
user3487554 · 时间复杂性组合 7 年前 |
|
user6217340 · 大O复杂性 7 年前 |
![]() |
Jawwad Rafiq · 对两个相关循环的复杂性感到困惑? 7 年前 |