namedajipai 2016-07-14 15:23 采纳率: 94.4%
浏览 4676
已采纳

怎么在数组中选取一些数,使得选取的数字的和最接近一个给定的数?

怎么在数组中选取一些数,使得选取的数字的和最接近一个给定的数?

  • 写回答

2条回答

  • 当作看不见 2016-07-14 15:32
    关注
     //查找数组num中与based的值最为接近的几个数字;
    var num=new Array(1,3,4,5,6,8,9,14,20,23,31,55,99)
    var nearly=new Array(100,100,100);
    function jisuan(){
        var base=15;
        var swap;
        for (var i = 0; i <num.length; i++) {
            var s=check(num[i],base)
            for(var j=0;j<nearly.length;j++){
                if(s<check(nearly[j],base))
                {
                    swap=num[i];
                    num[i]=nearly[j];
                    nearly[j]=swap;
                }
            }
        }
        console.log(nearly)
    }
    function check(i,j){
        if(i>j){
        return i-j;
        }else{
            return j-i;
        }
    
    }
    
    

    js写的,虽然没见你采纳过答案,问了几个月的数组问题,我都认得这个ID了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?