A27054. 如下为线性筛法,用于高效生成素数表,其核心思想是每个合数只被它的最小质因数筛掉一次,时间复杂度为O(n)。( )vector<int>linearsieve(int n){ vector<bool>is prime(n +1,true); vector<int>primes; for(inti=2;i<= n; ++i){ if(is_prime[i]){ primes.push back(i)…
判断题
困难
知识点
题目描述
如下为线性筛法,用于高效生成素数表,其核心思想是每个合数只被它的最小质因数筛掉一次,时间复杂度为O(n)。( )
vector<int>linearsieve(int n){
vector<bool>is prime(n +1,true);
vector<int>primes;
for(inti=2;i<= n; ++i){
if(is_prime[i]){
primes.push back(i);
}
for(int j=0;j<primes.size()&&i*primes[j]<= n; ++j){
is_prime[i*primes[j]]= false;
if(i%primes[j]==0){
break;
}
}
}
return primes;
}选项(单选)
答案解析
详细答案解析为会员权益,按每日次数查看。
开通 / 升级会员
上一题
下一题