手记

js算法总结,不断更新ing。。。。

<`
时常受到算法的各种问题,决定逐渐把他们一个一个揪出来。
第一篇:二分法排序。

`script>

   function quickSort(arr){
      if(arr.length<=1){
        return arr;
      }
      var num = Math.floor(arr.length/2);//中间位置索引,用做标记
      var numValue = arr.splice(num,1);//取出标记位置的值

      var left = [];
      var right = [];

      for(var i =0;i<arr.length;i++){
        if(arr[i]<numValue){
            left.push(arr[i]);
        }else{
            right.push(arr[i]);
        }
      }
      return quickSort(left).concat([numValue],quickSort(right));

    }

     var arr = [12,5,37,6,22,40]; 
     //alert(quickSort(arr));
     console.log(quickSort(arr));
    document.write(quickSort(arr))
</script>
1人推荐
随时随地看视频
慕课网APP

热门评论

老哥,splice这个设置两个参数是删除的意思,不是取值

老哥,splice变个设置两个参数是删除的意思,不是取值

目前还没有解说。。。

查看全部评论