LeetCode-Hash-204. Count Primes
来源:互联网 发布:网络日语速成法 编辑:程序博客网 时间:2024/06/07 05:46
问题:https://leetcode.com/problems/count-primes/
Countthe number of prime numbers less than a non-negative number, n.
分析:埃拉托斯特尼筛法。找出所有的素数。素数最小是2,先把2以及2的倍数剔除去。再把3以及3的倍数剔除出去。注意三个小问题:(1)首先我们该用i*i<=n 替代i<=sqrt(n) 来避免使用 sqrt() ,因为sqrt()的操作是比较expensive的。(2)当要表示两个状态的时候,首选是用bool而不是int来节省空间。(3)埃拉托斯特尼筛法只需要计算到 i*i<n 的部分即可。
代码:
class Solution {public: int countPrimes(int n) { int sum=1; bool result[n]; if(n<=2) return 0; for(int i=2;i<n;i++){ if(i%2==0) result[i]=false; else result[i]=true; } for(int i=3;i*i<n;i=i+2){ if(!result[i]) continue; for(int j=i;j*i<n;j+=2){ result[i*j]=false; } } for(int i=3;i<n;i++){ if(result[i]) sum++; } return sum; }};
0 0
- LeetCode-Hash-204. Count Primes
- [leetcode][math][hash] Count Primes
- 【LeetCode】204.Count Primes
- [leetcode] 204.Count Primes
- LeetCode 204. Count Primes
- Leetcode 204. Count Primes
- [LeetCode]204. Count Primes
- 204. Count Primes LeetCode
- LeetCode *** 204. Count Primes
- LeetCode 204. Count Primes
- leetcode-204. Count Primes
- LeetCode-204.Count Primes
- Leetcode 204. Count Primes
- 【leetcode】204. Count Primes
- [Leetcode]204. Count Primes
- LeetCode 204. Count Primes
- [leetcode] 204. Count Primes
- 204.[LeetCode]count primes
- Spring 4MVC在控制层传回JSON字符串
- 数据结构单向链表
- opencv图像拼接(粗暴)
- bzoj2337
- 操作系统—linux
- LeetCode-Hash-204. Count Primes
- 数字翻转网易2017秋招编程题--one
- bootstrap中bootgrid的使用实例
- 微信小程序之六(表单基本功能)
- 手把手教你Android手机与BLE终端通信--连接,发送和接收数据
- jzoj3823 遇见 [高斯消元解异或方程组]
- 【读书笔记】《LaTeX入门》第一章
- Heap和Stack的区别
- 新Titan X + cuda8.0 配置caffe