首页 > 其他 > 详细

力扣204题(如何高效寻找素数)

时间:2021-05-22 23:32:01      阅读:23      评论:0      收藏:0      [点我收藏+]

204题、计数质数

基本思想:

筛数法

具体实现:

1、从2向后遍历,每遇到一个数字,将其倍数所对应的 is_prime 设为False,
因此遇到新的数字num,is_prime[num]=True说明它不是任何2..num-1的数字的倍数,即质数。

代码:

def countPrimes(n):
    is_prime = [True]*(n+1)
    ans = 0
    for num in range(2,n+1):
        if is_prime[num]:
            ans+=1
            for k in range(1,n//num+1):
                is_prime[num*k]=False
    return ans

 

力扣204题(如何高效寻找素数)

原文:https://www.cnblogs.com/zhaojiayu/p/14799884.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!