单选题

下面程序的时间复杂度为(     )。

int primes[MAXP], num = 0;

bool isPrime[MAXN] = {

false

};

void sieve() {

for (int n = 2; n <= MAXN; n++) {

if (!isPrime[n])

primes[num++] = n;

for (int i = 0; i < num && n * primes[i] <= MAXN; i++) {

isPrime[n * primes[i]] = true;

if (n % primes[i] == 0)

break;

}

}

}

A

O(n)

B

O(n * log(n))

C

O(n * loglog(n))

D

O(n2)

赣ICP备20007335号-2