Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在数组Javascript中查找下一个素数_Javascript_Arrays_Primes - Fatal编程技术网

在数组Javascript中查找下一个素数

在数组Javascript中查找下一个素数,javascript,arrays,primes,Javascript,Arrays,Primes,昨天我有一个面试问题,它一直困扰着我,我想知道如何在数组的数字行中得到下一个素数 function isPrime(num) { for (var i = 2; i < Math.sqrt(num) + 1; ++i) { if (num % i === 0) { return false; } } return num !== 1; } function getNextPrime(prime) {

昨天我有一个面试问题,它一直困扰着我,我想知道如何在数组的数字行中得到下一个素数

function isPrime(num) {
    for (var i = 2; i < Math.sqrt(num) + 1; ++i) {
        if (num % i === 0) {
            return false;
        }
    }

    return num !== 1;
}

function getNextPrime(prime) {
      for (var count = prime + 1; ; ++count) {
        if (isPrime(count)) {
            break;
        }
    }

    return count;
}



console.log(getNextPrime([1, 2, 3, 4, 5]));
console.log(getNextPrime([2, 7, 11, 13]));
console.log(getNextPrime([19, 2, 13, 4]));
console.log(getNextPrime([2, 4, 6, 8]));
函数isPrime(num){
对于(var i=2;i
//是否在数组的最后一个元素旁边素数?
函数isPrime(num){
对于(var i=2;ia-b);
var last=sortedArray[sortedArray.length-1];
对于(变量计数=最后一次+1;;++计数){
如果(iPrime(计数)){
打破
}
}
返回计数;
}
log(getnexttime([1,2,3,4,5]);
log(getnexttime([2,7,11,13]);
log(getnexttime([19,2,13,4])
const isPrime=函数(n){

if(isNaN(n)| |!isFinite(n)| | n%1 | | | n下一个是什么--数组的最后一个元素?你想对
prime+1
做什么?是他们在采访中给你的所有数据吗?为什么假设它来自最后一个元素?如果数组是
[5,4,3,2,1]
您返回了
3
,但他们不希望重复,所以答案应该返回
7
?我应该澄清一下,他们希望下一个数字被放入数组中。console.log(GetNextTime([1,2,3,4,5]);=>[1,3,5,4,7];//非素数保留在数组控制台中。log(GetNextTime([2,7,11,13]);=>[3,11,13,17]console.log(GetNextTime([19,2,13,4]);=>[23,3,17,4]//非素数保留在数组中