204. Count Primes
2016-06-07 22:02
183 查看
题目
Description:
Count the number of prime numbers less than a non-negative number, n.
分析
计算前n个数的素数个数,创建容量为n+2的bool数组,从2开始遍历,素数下标存储元素值为0,非素数为1,从2开始计数,并对n以前的2的倍数对应值置1,然后考虑3,以此类推,保证每次考虑某个素数时进行计数,同时将n以前的该素数倍数置1表示排除非素数,
class Solution {
public:
int countPrimes(int n) {
bool prime[n+2]={0};
int i,k,count=0;;
for(i=2;i<n;i++){
if(prime[i])
continue;
count++;
for(k=1;(k*i)<=n;k++){
prime[k*i]=1;
}
}
return count;
}
};
Description:
Count the number of prime numbers less than a non-negative number, n.
分析
计算前n个数的素数个数,创建容量为n+2的bool数组,从2开始遍历,素数下标存储元素值为0,非素数为1,从2开始计数,并对n以前的2的倍数对应值置1,然后考虑3,以此类推,保证每次考虑某个素数时进行计数,同时将n以前的该素数倍数置1表示排除非素数,
class Solution {
public:
int countPrimes(int n) {
bool prime[n+2]={0};
int i,k,count=0;;
for(i=2;i<n;i++){
if(prime[i])
continue;
count++;
for(k=1;(k*i)<=n;k++){
prime[k*i]=1;
}
}
return count;
}
};
相关文章推荐
- easyUI-tree
- XML.更好的文档类型定义.XML Schema
- 判断二叉树是不是平衡树
- 数组、LIst<> 、 ArrayList的性能对比
- discuz QQ互联登陆出现(1054) Unknown column “conuintoken” in “field list”
- 如何卸载干净MySQL,在重新装一个新的MySQL?(给新手)
- 01-java中“接口”的概念
- 给一道关于const的面试题
- 【整理】getopt和getopt_long函数
- SpringMVC中文乱码 controller乱码
- Maven创建项目(命令创建)
- onvif学习笔记8:最近写的一个ONVIF客户端的心得小结
- "快速排序"算法-之通俗易懂全面解析
- 创建一台拉倒服务器
- C基础中的知识点
- Linux内核中的调度算法
- sqlite 中的or 和 and
- CF 593A 2Char
- javascript设计模式 观察者模式
- 关于php在linux上的环境配置