JS几种排序算法

一.冒泡排序

var bubble = function(arr){
for(i=;i<;i++){
for(j=;j<-i;j++){
if(arr[j] > arr[j+]){
temp = arr[j];
arr[j] = arr[j+];
arr[j+] = temp;
}
}
}
return arr;
}

二.插入排序

var insersort = function(arr){
for(i=;i<;i++){
temp = arr[i];
j = i;
while(j > && arr[j-] > temp){
arr[j] = arr[j-];
j--;
}
arr[j] = temp;
}
return arr;
} //快速排序
var quicksort = function(arr){
var basenum,basenumIndex;
var left = [];
var right = []; if(arr.length <= ){
return arr;
}

三.基准数的位置

     var quicksort = function(arr){
var basenum,basenumIndex;
var left = [];
var right = []; if(arr.length <= ){
return arr;
}
//基准数的位置
basenumIndex = Math.floor(arr.length/);
basenum = arr.splice(basenumIndex,)[];
for(i=;i<arr.length;i++){
if(arr[i] < basenum){
left.push(arr[i]);
}
else{
right.push(arr[i]);
}
}
//递归调用
return quicksort(left).concat([basenum],quicksort(right));
}
上一篇:Tengine编译安装+lua+sticky模块


下一篇:poj 2762 强连通缩点+拓扑排序