玩蛇网提供最新Python编程技术信息以及Python资源下载!
python零基础培训

用Python求素数的快速算法源码示例

python 培训

本篇文章为Python算法相关,用Python求素数的快速算法源码示例。算法在Python的学习中算是一个要点,能研究明白算法的同学都可以算的上是Python的大牛了。

用Python求素数算法源码

首先简单的来说下什么是素数:质数又称素数,有无限个。除了1和它本身以外不再有其他的因数;例如 2,3,5,7 是质数,而 4,6,8,9 则不是。这里只是简单的说一下,如果想具体了解素数,可以自行百度。

以下为Python求素数的快速算法源码示例:


def primes(n):
  
  if n < 2:  return []

  if n == 2: return [2]
 
  s = range(3, n, 2)
 
  mroot = n ** 0.5

  half = len(s)

  i = 0

  m = 3

#www.iplaypython.com

  while m <= mroot:

    if s[i]:
      j = (m * m - 3)//2
      s[j] = 0

      while j < half:
        s[j] = 0
        j += m

    i = i + 1

    m = 2 * i + 3

  return [2]+[x for x in s if x]

站长推荐阅读相关内容:
linux基础入门教程

玩蛇网文章,转载请注明出处和文章网址:http://www.iplaypy.com/code/algorithm/a2609.html [复制]



微信扫描下图可直接关注Python公众号

玩蛇网Python QQ群,欢迎加入: ① 279974227 玩蛇网Python新手群
修订日期:2016年01月04日 - 21时36分59秒 发布自玩蛇网

我要分享到:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
相关文章推荐
别人正在看
特别推荐
站长推荐:
去顶部去底部