1. 程式人生 > >javascript 快速排序

javascript 快速排序

調用 取字符 ret asc console cti 無限循環 dex quicksort

/*
快速排序
*/
var arr1=[1,5,6,3,9,4,8];

function quickSort(arr) {
if (arr.length<=1) {
return arr;
}
var pivotIndex = Math.floor(arr.length/2);
var jz = arr.splice(pivotIndex,1)[0];//截取字符串作為基準
var left = [];
var right = [];
for (var i = 0; i<arr.length; i++) {
if (arr[i]<jz) {
left.push(arr[i]);
}else{
right.push(arr[i]);
}
}
return quickSort(left).concat([jz],quickSort(right));
}
var ff = quickSort(arr1);
for(var i =0 ;i<ff.length;i++){
console.log(ff[i])
}

/*
考慮的問題 遞歸調用停止的條件,否則是無限循環
*/

javascript 快速排序