`

求素数的快速算法(python)

阅读更多
def primes(n):
  """ returns a list of prime numbers from 2 to < n """
  if n < 2:  return []
  if n == 2: return [2]
  # do only odd numbers starting at 3
  s = range(3, n, 2)
  # n**0.5 may be slightly faster than math.sqrt(n)
  mroot = n ** 0.5
  half = len(s)
  i = 0
  m = 3
  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
  # make exception for 2
  return [2]+[x for x in s if x]


用这个算法求2000000以内的素数,2S都不用,够快的
分享到:
评论

相关推荐

    python 求素数算法 可以限定运行次数

    完整的 python 求素数算法 可以限定运行次数 可以中断保存

    elgamal加密算法python代码.docx

    elgamal加密算法python代码全文共10页,... 代码实现: ```python import random def generate_key(p_bits): # 生成一个p位的大素数 p = get_large_prime(p_bits) elgamal加密算法python代码全文共10页,当前为第2页。

    求1~1000质数,算法实现相对简单

    计算1~1000的质数的程序,实现的算法比较简单。

    RSA算法的纯Python实现(源码)

    Miller_Rabin素数判断法,大整数快速因式分解算法(pollard_rho算法),生成指定位数的大质数或大整数算法等。 3、RSA算法库。使用上面两个库,实现RSA算法。实现了生成指定数位的密钥对,加密,解密,签名和验证,...

    RSA算法的纯Python实现

    Miller_Rabin素数判断法,大整数快速因式分解算法(pollard_rho算法),生成指定位数的大质数或大整数算法等。 3、RSA算法库。使用上面两个库,实现RSA算法。实现了生成指定数位的密钥对,加密,解密,签名和验证,...

    大素数的快速生成研究与实现

    大素数的快速生成研究与实现。描述了大素数的生成算法。

    求200以内的所有素数的简单算法!

    求200以内的所有素数的简单算法!很实用的求素数算法!

    python实现RSA算法

    基于Python实现RSA算法,包括的函数有:判断一个数是否为素数、判断两个数是否互为素数、欧几里得算法求最大公约数、产生公私钥、扩展欧几里得算法求模逆、加密明文、解密密文以及代码测试。

    RSA算法python实现

    使用python2.7写的RSA加密解密,支持超过10^10的大素数,可以加解密大于64位的明文,注释详尽。

    基础算法python统计素数并求和

    python统计素数并求和 def isprime(n): #判断素数函数 a=0 m=int(pow(n,0.5))+1 for i in range(2,m+1): if n%i == 0: break elif n%i != 0 and i==m: a=1 return (a) def f(n): #找小于n的素数并求和 ...

    判断素数的aks算法代码matlab

    判断一个数字是素数还是合数的算法——aks算法,具有较强的优化性和较低的计算复杂度。方便、快捷、准确。

    基础算法-python判断素数

    python判断素数 def is_prime(n): # 判断素数的函数 """判断素数的函数,接收一个正整数为参数,参数是素数时返回True,否则返回False""" if n return False # 0、1、负数以及偶数都不是素数 for i in range(2, ...

    原根产生算法

    Python 原根产生算法,就是如何求大素数的原根的算法。

    基础算法-python判断质数的四种方法

    【基础算法】-python判断质数的四种方法 # 方法一 num = int(input("输入一个数字:")) i = 2 while i if num % i == 0: print(f"{num}不是一个质数") break i += 1 else: print(f"{num}是一个质数") # ...

    prime-algorithms:用于查找和列出素数的各种 Python 算法

    素数算法用于查找和列出素数的各种 Python 算法。 包括: 筛(Erastosthenes 筛的快速、现代优化) 效率,自定义脚本(著名的) ,一种非常幼稚的做法 (雅虎程序员创造的超优化算法)基本原理为宾夕法尼亚初级科学...

    AKS prime 素数检测算法

    使用AKS算法检测素数和生成素数. 提供了AKS的6个步骤的方法 绝对原创

    算法领域python实现代码

    算法领域python实现代码,判断一个数是否为素数

    python基本算法.zip

    压缩包现在共有23个python基本算法(包括了斐波拉契数列普通算法和递归算法,水仙花数、素数、乘法口诀、排序、菱形、等腰三角形、猴子吃桃、判断某年某月、求提成、不重复数字组合、列表赋值、时间暂停、乘方结果之...

    算法领域-输出n以内的所有的素数-python实现

    python实现算法领域输出n以内的所有的素数

    从重力模拟到元胞自动机的不同算法和模拟,在 python 中实现_python代码_下载

    用 Python 编写的所有模拟和算法的库。包括从太阳系和重力模拟到排序算法可视化器的程序。所有算法和模拟都是由 Fraser Love -me@fraser.love在 Python 中实现的 模拟和生成器 二维重力模拟 太阳系模拟 Perlin 噪声...

Global site tag (gtag.js) - Google Analytics