このアルゴリズムは、サイズ X の配列を作成する必要があり、次にインデックス内の素数のトップゼロではない各数値を作成する必要があります。複雑さを教えてください。なぜ?
// x is the number we want all the primes below him
int[] p = new int[x + 1];
// Initializes the array.
for (int i = 2; i < p.length; i++) {
p[i] = i;
}
// "Erases" the composite (non-prime) numbers.
for (int i = 2; i <= Math.sqrt(x); i++) {
for (int j = i * 2; j < p.length; j += i) {
p[j] = 0;
}
}
複雑さは O(x*sqrt(x)) ですか?