我觉得我在某些地方还有一个额外的变量。]>
尤其是找到的变量。有没有更短或更有效的方法来编写此代码?
// 2, 3, 5, 7, 11, 13, 17
function findPrimes(N){
const primes = [2];
for(let i = 2; i <= N; i++){
let found = true;
for(let j = 0; j < primes.length; j++){
if( i % primes[j] === 0){
found = false;
break;
}
}
if(found){
primes.push(i);
}
}
return primes;
}
findPrimes(100);
我觉得我在某些地方还有一个额外的变量。特别是找到的变量。有没有更短或更有效的方式来编写此代码? // 2,3,5,7,7,11,13,17函数findPrimes(N){...
取决于您希望代码的详细程度和原义。例如,这应该与您的算法完全等效:
例如,您的代码检查的数字太多,没有奇数> 2可以是质数。