阅读背景:

快速找出2到n所有的素数

来源:互联网 
public static ArrayList<Integer> primeNumbers(int n) {
		if (n < 2) return null;
		ArrayList<Integer> list = new ArrayList<Integer>();
		boolean[] prime = new boolean[n + 1];
		for (int i = 2; i < n + 1; i++) {
			prime[i] = true;
		}
		for (int i = 2; i < Math.sqrt(n);i++) {
			if (prime[i]) {
				for (int j = i * i; j <= n; j += i) {
					prime[j] = false;
				}
			}
		}
		
		for (int i = 2; i <= n; i++) {
			if (prime[i] == true) {
				list.add(i);
			}
		}
		return list;
	}public static ArrayList<Integer> primeNumbers(i



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: