Discuss / JavaScript / 这是我的稍快点的算法,我再看看有没有别的

这是我的稍快点的算法,我再看看有没有别的

Topic source

赵丹Saint

#1 Created at ... [Delete] [Delete and Lock User]
function get_primes(arr) {

            var qiusushu = function(x){
                if(x===1) return;
                if(x===2) return 2;
                if(Math.floor(x/2)===x/2) return;
            for(var i=3;i<=Math.sqrt(x);i+=2){
                if(Math.floor(x/i)===x/i){
                    return;
                }
            }
        return x;
        } 
   return arr.filter(qiusushu);
}

临安夜雨

#2 Created at ... [Delete] [Delete and Lock User]
(Math.floor(x/i)===x/i)

这一句,是为了检验x能否被i整除么?如果 是的话,改成这样如何?

(Math.floor(x%i)== 0)

  • 1

Reply