leetcode题解-204. Count Primes
来源:互联网 发布:淘宝购物车有什么用 编辑:程序博客网 时间:2024/06/17 01:52
该题目就是求小于给定参数n的所有素数。题目中所给的提示已经很明显。这里整理出来。
思路一,直接遍历n个数,对每个数进行判断是否为素数即可。但是算法时间复杂度过高,o(n^2)
public int countPrimes(int n) { int count =0; for(int i=2; i<n; i++) if(isPrime(i)) count++; return count; } public boolean isPrime(int n) { if(n<=1)return false; //这里判断时的上限是根号下n。可以思考下原因。 for(int i=2; i*i<=n; i++) if(n%i == 0) return false; return true; }
思路二:使用一个数组表示元素是否为素数。从小到大,将其倍数都设为素数。这样就省去了判断一个数是否为素数的过程,是的时间复杂度大大减小。
public int countPrimes3(int n) { int res = 0; boolean[] used = new boolean[n]; for (int i = 2; i <= Math.sqrt(n); i++) { if (!used[i - 1]) { int temp = i * i; while (temp < n) { used[temp - 1] = true; temp += i; } } } for (int i = 2; i < n; i++) { if (!used[i - 1]) { res++; } } return res; }
0 0
- Leetcode题解 204. Count Primes
- leetcode题解-204. Count Primes
- LeetCode题解:Count Primes
- leetcode 题解 Count Primes
- LeetCode 题解(198) : 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. 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
- 非阻塞同步算法与CAS(Compare and Swap)无锁算法
- Jenkins配置ant依赖问题
- 并发之痛 Thread,Goroutine,Actor
- HorizontalScrollView作为导航栏和HorizontalScrollView的滑动
- Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart
- leetcode题解-204. Count Primes
- iOS UITableView(四)-Cell拖动更改排序
- 几种遍历map的方法
- 如何使用反射
- Android自定义View之画笔与画布(2)
- kafka自学之路--zookeeper中存储结构
- linux中dig命令返回结果解释
- MFC GDI+基础
- spring-data-redis 使用