【筛选法】
【改进方法】
实际上,当发现X是质数时,不需要从X的1-X去排除,只需从X+1开排除即可。下面我证明一下。
1-X的数分为2类,一类是合数,合数显然可以拆分为比X更小的质数,所以以X为基再次遍历此合数,无意义,重复了。
一类是质数,此质数显然小于X,而小于X的质数早已被遍历,以X为基再次遍历也无意义。
所以,优化的方法是,当找到质数X时,从X+1开始遍历。此种优化可以节省一半的时间。虽然不是指数级优化,但也是非常有意义的。