LeetCode Count Primes

原创 2015年07月09日 00:46:33

Description:

Count the number of prime numbers less than a non-negative number, n.

Solution:

可以用筛法求素数。

先用2把所有2的倍数去掉,3把所3的倍数去掉,依此类推。

这道题目出的不是特别好,因为n如果太大,筛法也是不可行的,首先数组就没办法开那么大。

import java.util.*;

public class Solution {
	public int countPrimes(int n) {
		if (n <= 2)
			return 0;
		boolean isPrime[] = new boolean[n];
		Arrays.fill(isPrime, true);

		isPrime[2] = true;
		for (int i = 2; i < n; i++) {
			if (isPrime[i])
				for (int j = 2; i * j < n; j++)
					isPrime[i * j] = false;
		}

		int count = 0;
		for (int i = 2; i < n; i++)
			if (isPrime[i])
				count++;
		return count;
	}
}


相关文章推荐

【leetcode】【204】Count Primes

一、问题描述 Description: Count the number of prime numbers less than a non-negative number, n. ...

[LeetCode] Count Primes

Count Primes Description: Count the number of prime numbers less than a non-negative number, n ...

leetcode 204. Count Primes-素数统计

原题链接:204. Count Primes 按照题目“Show Hint”提示,如果定义一个函数,判断这个数是否是素数,那么效率会很低: public int countPrimes(int...

leetcode 204: Count Primes

问题描述:Description:Count the number of prime numbers less than a non-negative number, n.

LeetCode 204 - Count Primes

一、问题描述Description:Description:Count the number of prime numbers less than a non-negative number, nHi...

leetcode笔记:Count Primes

题目有很多tips,大意是算出2~n之间有多少个素数。 思路来自著名的埃拉托斯特尼筛法。...

[LeetCode] Count Primes - 素数系列问题

题目概述: Description: Count the number of prime numbers less than a non-negative number, n. 题意是给出n中所有素数...

LeetCode 204:Count Primes

Description: Count the number of prime numbers less than a non-negative number, n 分析: 题目要求计算小于N的所有...

【LEETCODE】204-Count Primes

Description: Count the number of prime numbers less than a non-negative number, n. 思路: The...

LeetCode笔记:204. Count Primes

寻找小于n的质数个数
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LeetCode Count Primes
举报原因:
原因补充:

(最多只允许输入30个字)