Eratosthenes筛法求素数
来源:互联网 发布:连锁店软件多少钱 编辑:程序博客网 时间:2024/04/27 19:11
本总结是是个人为防止遗忘而作,不得转载和商用。
题目
给定正整数N,求小于等于N的全部素数
Eratosthenes筛法
1,将2到N写成一排;
2,记排头元素为x,则x是素数;除x以外,将x的倍数全部划去;
重复以上操作,直到没有元素被划去,则剩余的即小于等于N的全部素数。
举例
用Eratosthenes筛计算100以内的素数。
于是,第一步将2到N写成一排,这个就不写了。
第二步:当前排头元素时2,则2是素数,所以将“除了2意外的2的倍数全部划去”,此时只剩下:
23 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 5759 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99
重复第二步:当前排头元素是3,则3是素数,所以将“除了3意外的3的倍数全部划去” ,此时只剩下:
23 5 7 11 13 17 19 23 25 29 31 35 37 41 43 47 49 53 55 59 61 65 67 71 73 77 7983 85 89 91 95 97
重复第二步:当前排头元素是5,则5是素数,所以将“除了5意外的5的倍数全部划去” ,此时只剩下:
23 5 7 11 13 17 19 23 29 31 37 41 43 47 49 53 59 61 67 71 73 77 79 83 89 91 97
不过重复第二步算7时,按理应该删除7的倍数,不过7的倍数中的2*7,3*7, 4*7, 5*7,已经6*7被删过了,所以没必要再来一遍,因此直接从72开始删就好。
同理,到11时,直接从112开始,而112 = 121 > 100,就不用再算了。
所以,如果算100以内的素数则直接从2删到"根号100"就好。
- Eratosthenes筛法求素数
- Eratosthenes筛法求素数
- Eratosthenes筛法求素数
- Eratosthenes筛法求素数表
- 分治和递归:Eratosthenes筛法求素数
- Eratosthenes筛法,求素数
- Eratosthenes求素数法
- Eratosthenes 找素数
- 素数表(Eratosthenes)
- Eratosthenes筛法 素数筛
- Eratosthenes 筛选素数
- Eratosthenes素数筛选
- Eratosthenes筛法求1到n内的素数个数
- Eratosthenes 素数表生成方法
- 素数筛——Eratosthenes 素数筛、Euler 素数筛
- Eratosthenes筛法求1——100000之间所有的素数(32位汇编语言)
- Eratosthenes筛选法求素数的算法
- Sieve Of Eratosthenes求素数(埃拉托斯特尼筛法)
- 迴响贝斯
- json的java类库:Json-lib、Gson
- 第8周OJ项目1 求倒数和
- IE兼容性优化
- IOError: No translation files found for default language zh-cn.
- Eratosthenes筛法求素数
- 《多线程编程》学习之六:String的常量池特性,锁对象的改变,volatile关键字
- *((volatile unsigned int*)0xFFE00000)这种格式的理解
- 【bzoj2463】 [中山市选2009]谁能赢呢?
- Java Filter
- jquery 和其他js框架同时使用的不兼容问题解决方法
- 打开相册/相机 并裁剪
- 面向对象思维
- 面向对象_内部类分类及成员内部类的直接使用