埃氏筛法用于生成质数序列
发布时间
阅读量:
阅读量
import matplotlib.pyplot as plt
import numpy as np
# np.arange()函数返回一个有终点和起点的固定步长的排列,如[1,2,3,4,5],起点是1,终点是100,默认步长为1
a = np.arange(1, 101)
# 埃拉托斯特尼筛法,必须把不大于根号n的所有素数的倍数剔除,剩下的就是素数。
n_max = int(np.sqrt(len(a)))
is_prime = np.ones(len(a), dtype=bool)
is_prime[0] = False
for i in range(2, n_max):
if i in a[is_prime]:
is_prime[(i**2 - 1)::i] = False
print(a[is_prime])
AI写代码python
质数序列分布特征
全部评论 (0)
还没有任何评论哟~
