以下代码列出了所有质数。
这是埃拉托色尼筛法的新实现吗?
当代码达到更高的数字时,如何改进代码以使其运行得更快?
def PrimeSieve(curNum):
prime = True
del updateList[:]
for cp in PrimeList:
daPrime, daSkip = cp
if curNum == daSkip:
prime = False
upcp = (daPrime, daSkip + daPrime)
updateList.append(upcp)
else:
updateList.append(cp)
if prime:
updateList.append((curNum,2*curNum))
return prime
PrimeList = []
updateList = []
for x in range(2, 1111):
print(x, PrimeSieve(x))
del PrimeList[:]
for i in updateList:
PrimeList.append(i)
回首忆惘然
相关分类