365bet体育在线28

365bet手机客户端下载

线性筛分法(欧拉筛法)

作者:365bet网赌 发布时间:2019-09-21 09:34 点击次数:

当时间复杂度O(n)n大时,欧拉筛选方法中使用的时间短于算法O(nloglogn)的时间。
为什么
在Euler筛选方法中,仅访问每个复合数,并且对f[]的值进行一次校正。
以n为内在数字的示例。
在(i = 2; i = n; i ++)的情况下
是(f[i]== 0)
p[++ cnt]= i;
在(j = 1; j = cnt; j ++)的情况下
当(i * p[j]n)被破坏时,因为n是内生数。
f[i * p[j]]= 1;
如果(i%p[j]== 0)则它被打破。//这句话是关键。
此语句保证数字按其最重要的元素(自身除外)移动。
可以说它是屏幕上最小的主要因素。
可以手工清楚地理解。
我们来写一下吧。
例如,12被删除26而34没有被12筛选。
如果(i%p[j]== 0)被破坏,则该语句保证该数字被其最重要的元素(除了它自己)移位。
4%8 = 4%2 = = 0。中断当前周期并没有筛选12。


   


上一篇:电加热器的电费是多少?   下一篇:没有了