欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaScript实现各种排序的代码详解

程序员文章站 2022-04-29 08:32:27
冒泡排序 function bubble(arr){ var temp; for(var i=0;i

冒泡排序

 function bubble(arr){
    var temp;
    for(var i=0;i<arr.length-1;i++){
      for(var j=i+1;j<arr.length;j++){
        if(arr[i]>arr[j]){
          temp=arr[i];
          arr[i]=arr[j];
          arr[j]=temp;
        }
      }
    }
    return arr;
  }
  console.log(bubble([2,5,1,0,6,2]))  //[0,1,2,2,5,6]

选择排序

function selctor(arr){
    var min;
    for(var i=0;i<arr.length-1;i++){
      min=i;
      //依次找到为最小值的索引
      for(var j=i+1;j<arr.length;j++){
        if(arr[min]>arr[j]){
          min=j;
        }
      }
      //如果最小值不在当前位置上 就交换到位置i
      if(min!=i){
        swap(arr,min,i)
      }
    }
    return arr
  }
  function swap(arr,index1,index2) {
    var temp=arr[index1];
    arr[index1]=arr[index2];
    arr[index2]=temp;
  }

插入排序

 function insert(arr){
    var j,key;
   for(var i=1;i<arr.length;i++){
     j=i;
     key=arr[i];
     while(--j>-1){
       if(arr[j]>key) {
         arr[j + 1] = arr[j];
       }else{
         break;
       }
     }
     arr[j+1]=key;
   }
   return arr
  }

总结

以上所述是小编给大家介绍的javascript实现各种排序的代码详解,希望对大家有所帮助