首先了解什么是快速排序。
1览祖、找到一個基準值(一般是中間位)
2孝鹊、然后將數(shù)組的值與基準值比較,分為兩個數(shù)組(比基準值小的展蒂,比基準值大的)
3又活、然后對這兩個數(shù)組再排序,循環(huán)锰悼。
var arr = [1,3,4,8,2,0,9,11,5];
console.log(quickSort(arr));
function quickSort(arr){
if(arr.length <= 1) return arr;
var index = Math.floor(arr.length/2);
var key = arr.splice(index,1)[0];
var left = [], right = [];
for(var i=0;i<arr.length;i++){
arr[i]<key?left.push(arr[i]):right.push(arr[i]);
}
return quickSort(left).concat([key],quickSort(right));
}