js中的排序方法

一、冒泡排序

var  arr=[22,1,33,19,77];

function  bubbleSort(arr){

  for(var i=0;i<arr.length-1;i++){

    for(var j=0;j<arr.length-i-1;j++){

      if(arr[j]>arr[j+1]){

        var temp=arr[j];

        arr[j]=arr[j+1];

        arr[j+1]=arr[j];

      }

    }

     }

  return arr;

}

console.log( bubbleSort(arr))

二、快速排序

var arr=[]

function quickSort(arr){

  for(var i=0;i<arr.length;i++){

    for(var j=i+1;j<arr.length;j++){

      if(arr[j]<arr[i]){

        var temp=arr[i];

        arr[i]=arr[j];

        arr[j]=temp;

      }

    }

  }

  return arr;

}

三、选择排序

var arr=[1,5,95,32,7,58,21];
function a(arr){
  for(var i=0;i<arr.length-1;i++){ 
    var temp,minIndedx;
    minIndedx=i;
    for(var j=i+1;j<arr.length;j++){
      if(arr[j]<arr[minIndedx]){
        minIndedx=j;
      }
    }
    temp=arr[i];
    arr[i]=arr[minIndedx];
    arr[minIndedx]=temp;
  }
  return arr;
}
console.log(a(arr))

四、插入排序

var arr=[7,5,6,23,44,6,5,35,2,4,8,32];
function a(arr){

  for(var i=1;i<arr.length;i++){
    var key=arr[i];
    var j=i-1;
    while(arr[j]>key){
      arr[j+1]=arr[j]
      j--
    }
    arr[j+1]=key
  }
return arr;
}
console.log(a(arr))

原文地址:https://www.cnblogs.com/liankong/p/9584438.html