埃拉托色尼筛选法(the Sieve of Eratosthenes)简称埃氏筛法,是古希腊数学家埃拉托色尼('lEraatos'ttheneus 274B.oC.~194B.'sC.)提出的一种筛e选法。 是针对自然数列n中的自然数而实施的,用于求一定范围内的质数,它的容斥原理之完备性条件是p=H~。(来自百度百科)
下面是有关于质数的定义:
质数(prime number)又称素数,有无限个。
质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
(来自百度百科)
python中有专门实现这个算法的库,在使用的时候敲上import numpy as np就好,具体使用方式如下:
import numpy as np
def eratosthenes(n):
n = (n + 1) >> 1
p = np.ones(n, dtype=np.int8)
i, j = 1, 3
while i < n:
if p[i]:
p[j * j >>