python100以内孪生素数_python用递归筛选法求N以内的孪生质数(孪生素数)
本人最近读完一本书《质数的孤独》,里面讲到孪生质数,就想查一下孪生质数的分布情况。其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比较一些还是觉得用递归筛选法来解决这个问题。
新建List,然后从第0位开始,如果后面的能被这个数整除,则从数组中移除改元素,以此类推,最后留下的就是质数(素数)。
python版本与java版本不同,java可以在遍历list的时候删除该元素,可以对循环变量i进行i--的操作,防止以后的get(i)方法报错,python不支持这个操作只能是拿到被删除的元素,然后在遍历结束以后再去删除
代码如下:
#!/usr/bin/python3
class Test():
def __init__(self):
print ("fan")
def get(self,list,st):
n = list[st]
a = []
for i in range(st+1,len(list)):
if list[i] % n == 0:
a.append(list[i])
for x in a:
list.remove(x)
if len(list) > st+1:
self.get(list,st+1)
if __name__ == "__main__":
test = Test()
list = [i for i in range(2,5000)]
test.get(list,0)
for i in range(len(list)-1):
a = list[i]
b = list[i+1]
if b-a==2:
print ("孪生质数:"+str(a)+"----"+str(b))
这里备注一下:python为了防止内存溢出,限制了递归的深度,所以直接求10000以内的还不行,会报错:
RecursionError: maximum recursion depth exceeded in comparison
技术类文章精选
非技术文章精选
python100以内孪生素数_python用递归筛选法求N以内的孪生质数(孪生素数)相关推荐
- 用python找孪生素数_python用递归筛选法求N以内的孪生质数(孪生素数)
本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...
- java两个数之间质数求法_java用递归筛选法求N以内的孪生质数(孪生素数)
本人最近读完一本书<质数的孤独>,里面讲到孪生质数,就想查一下孪生质数的分布情况.其中主要用到了计算质数(素数)的方法,搜了一下,排名前几的都是用for循环来做的,感觉略微麻烦了一些,在比 ...
- python筛选质数并一行输出五个_python使用filter方法递归筛选法求N以内的质数素数附一行打印心形标记的代码解析...
本人在学习使用Python的lambda语法的过程中,用之前求解质数的思路重写了一遍,思路如下:就是新建一个长数组,然后从前往后递归相除去过滤后面的元素.中间对于Python语法的有了一点新的认识:看 ...
- python实现素数筛选法_python 使用 filter 方法递归筛选法求 N 以内的质数 (素数)
本人在学习使用 Python 的 lambda 语法的过程中,用之前求解质数的思路重写了一遍,思路如下:就是新建一个长数组,然后从前往后递归相除去过滤后面的元素.中间对于 Python 语法的有了一点 ...
- 用筛选法求100以内的素数(数组)
用筛选法求100以内的素数,要求使用数组. #include "stdafx.h" #include<iostream> using namespace std; in ...
- 【C语言】 利用筛选法求100以内的素数
算法思路: 原理很简单,就是当i是质(素)数的时候,i的所有的倍数必然是合数.如果i已经被判断不是质数了,那么再找到i后面的质数来把这个质数的倍数筛掉. 代码如下: //C语言 筛选法求100以内的素 ...
- C语言:用筛选法求100以内的素数
用筛选法求100以内的素数 素数:即质数,质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数. 筛选法:1不是素数,划去:2是素数,留下,将2的倍数划去:3没被划去,将3的倍数划去: ...
- 用筛选法求100以内的素数
用筛选法求100以内的素数 所谓筛选法是指埃拉托色尼筛选.埃拉托色尼是古希腊的著名数学家.他采取的方法是,在一张纸上写上1到1000的全部整数,然后逐个判断他们是否素数,找出一个非素数,就把他们挖掉, ...
- c语言 用筛选法求100以内的素数,使用筛选法求100以内的素数
使用筛选法求100以内的素数 筛选法介绍 先把N个自然数按次序排列起来. 1不是质数,也不是合数,划去. 第二个数2是质数留下来,而把2后面所有能被2整除的数都划去.2后面第一个没 划去的数是3,把3 ...
最新文章
- mybatisplus 操作另一个数据库的数据_c#连接sql数据库以及操作数据库
- python语言流程控制语句的格式_第四节 Python控制语句
- Python3 字符串复制
- Redis源码剖析(一)服务器与客户端交互流程
- hadoop学习2 记录配置hadoop环境的那些坑
- iPhone 12不标配充电器后,国产手机配件成了国外抢手货!
- js实现IE、谷歌浏览器打印网页内容
- 转【是什么浪费了我的时间 】
- ARMv8的OP-TEE源代码的获取和编译
- vrep和simulink联合仿真
- 《凤凰项目:一个IT运维的传奇故事》的读后感
- 使用selenium爬取东航余票
- r语言 col_co,cob,col,con,cor,cog前缀其实都是com变化而已
- 《实战java程序设计---上》
- 金蝶登录服务器不显示名称,金蝶云服务器如何登陆不了
- 项目管理(PMP)项目进度管理
- 爬虫+可视化——链家杭州二手房房源信息
- 职业情商修炼的3523法
- jdk 1.8安装教程
- [机缘参悟-43]:鬼谷子-第六忤合篇 - 合则聚,不合则散,顺势而为
热门文章
- Scalaz(44)- concurrency :scalaz Future,尚不完整的多线程类型
- 经典KMP算法C++与Java实现代码
- D - 小Y上学记——要迟到了!
- ibatis.net:第五天,QueryForObject
- 二叉树节点数据结构-练习 5 二叉树的建立 遍历
- php 和mysql实现抢购功能_php处理抢购类功能的高并发请求
- php根据当前日期判断法定节假日_判断日期是否为法定节假日的API接口与示例函数...
- 北京师范大学计算机应用基础考试,北京师范大学-计算机应用基础作业(一至九全套)...
- php灰度化,PHP Imagick – 将图像转换为灰度(非常糟糕的结果)
- php程序计算偶数和,php怎么编写计算双数的和