`

求素数的快速算法(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 求素数算法 可以限定运行次数 可以中断保存

    python实现反向数,回文数,回文素数,反素数,梅森素数,双素数。

    在Python编程语言中,我们可以利用其强大的功能来处理各种数学问题,包括与素数、回文数相关的算法。本文将详细介绍如何用Python实现反向数、回文数、回文素数、反素数、梅森素数以及双素数的判断。 首先,让我们...

    Python 实现多种素数判断算法

    内容概要:本文详细介绍了四种常见的素数判断算法——试除法、埃拉托斯特尼筛法、米勒-拉宾素性检验以及费马素性检验的基本原理及其 Python 实现方法。此外,还简要提到了其他两种算法:威尔逊定理和阿格拉瓦尔-卡亚...

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

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

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

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

    RSA.rar_RSA算法Python_python实现加密_rsa加密_加密_加密解密

    Python作为一门易学且功能强大的编程语言,提供了许多库来支持RSA算法的实现,例如`cryptography`库。这个名为"RSA.rar"的压缩包文件包含了使用Python实现RSA算法的代码,以及一个图形用户界面(GUI)用于用户友好地...

    RSA算法的纯Python实现

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

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

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

    elgamal加密算法python代码.docx

    ElGamal加密算法是一种基于离散对数问题的非对称加密方法,由塔里克·埃尔·加马尔在1984年提出。它主要用于数据加密和数字签名,其安全性和RSA算法一样,都是基于计算离散对数的困难性。ElGamal算法分为三个主要...

    RSA算法python实现

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

    python求素数因子-Python入门教程:素数判断与素因子分解.pdf

    在Python编程中,判断一个数是否为素数和进行素因子分解是常见的数学问题,尤其在初学者阶段。本文档提供了两种关键函数:`isprime` 和 `factor`,用于解决这些问题。 首先,`isprime` 函数用于检查一个整数 `num` ...

    基础算法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的素数并求和 ...

    python新手算法函数思想入门项目,包含几个小项目,没有程序基础可以根据这个开拓思维,会发现算法也挺好玩的,标有注解,一看就懂

    本文将围绕“Python新手算法函数思想入门项目”进行详细讲解,帮助你快速理解并应用这些基本知识。 首先,让我们来了解什么是算法。算法可以看作是一系列清晰定义的步骤,用于解决特定问题或执行特定任务。在Python...

    python 实现RSA算法

    **Python实现RSA算法** RSA(Rivest–Shamir–Adleman)是一种非对称加密算法,广泛应用于网络安全领域,如数据加密、数字签名等。它的主要特点是使用一对密钥,即公钥和私钥,公钥用于加密,私钥用于解密。这种...

    AKS prime 素数检测算法

    AKS素数检测算法,全称为阿若拜德·阿格拉瓦尔、萨钦·克塔尼和米特拉·哥斯瓦米提出的素数判定算法,是2002年数学界的一项重大突破。它以三位印度裔数学家的名字命名,打破了长久以来对于素数检测算法复杂度的限制...

    判断素数的aks算法代码matlab

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

    基础算法-python判断素数

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

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

    本篇文章将详细探讨如何使用Python语言实现一个算法,以输出指定范围内所有素数。 Python是一种功能强大、易于学习的编程语言,非常适合初学者进行算法实现。在这个问题中,我们将采用一种名为“埃拉托斯特尼筛法”...

    python实现RSA算法

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

Global site tag (gtag.js) - Google Analytics