#python算法100天 DAY04--the Sieve of Eratosthenes(埃拉托色尼筛选法)

本文介绍了埃拉托色尼筛选法,一种求解一定范围内质数的算法,源于古希腊数学家埃拉托色尼。通过Python实现该算法,利用质数定义,创建两个数组a和b,排除所有非质数,确保a*a和a*b不超过目标范围。最终代码实现了质数筛选功能。
摘要由CSDN通过智能技术生成

埃拉托色尼筛选法(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 >>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值