一、冒泡排序
1 function bubbleSort(arr){ 2 for(var i=0;iarr[j+1]){ 5 var temp=arr[j]; 6 arr[j]=arr[j+1]; 7 arr[j+1]=temp; 8 } 9 }10 11 }12 }13 14 var arr=[12,4,9,89,10];15 bubbleSort(arr);16 console.log(arr);
二、插入排序
1 function insertSort(arr){ 2 //从1开始遍历arr 3 for(var i=1;i=0&&p位置的值>t 7 while(p>=0&&arr[p]>t){ 8 //p位置的值,赋值给p+1位置 9 arr[p+1]=arr[p];10 p--;//p减一11 }//(循环退出)12 arr[p+1]=t;//将t保存到p+1位置13 }14 return arr;15 } 16 17 var a=[5,1,2,4,8,6,3,77];18 var res=insertSort(a);19 console.log(res);
1 function quickSort(arr){ 2 if(arr.length>1){ 3 var c=parseInt(arr.length/2); 4 var center=arr.splice(c,1); 5 for(var i= 0,left=[],right=[];i
或
1 function quickSort(arr) { 2 if(arr.length<=1) { 3 return arr; 4 } 5 let leftArr = []; 6 let rightArr = []; 7 let q = arr[0]; 8 for(let i = 1,l=arr.length; iq) {10 rightArr.push(arr[i]);11 }else{12 leftArr.push(arr[i]);13 }14 }15 return [].concat(quickSort(leftArr),[q],quickSort(rightArr));16 }17 18 module.exports = quickSort;