素数表的埃氏筛法和线性筛法的时间复杂度都是 $O(N \log \log N)$。
埃氏筛法:从2开始标记倍数为合数,O(n log log n)。线性筛(欧拉筛):每个合数只被最小质因子标记一次,O(n)。线性筛效率更高。
分析复杂度时注意外层循环和内层循环的关联。例如内外两层都到n的循环不一定是O(n²),要看内层是否每次都在缩小。
【考点】埃氏筛法|线性筛法|时间复杂度
本考点在五级算法模块中,命题人专门用这道判断题卡住"背公式不背原理"的考生——以为筛法都有对数因子,却不懂线性筛的本质不同