var arr = [12,7,19, 55,10,21,45,13,25 ,8];
function quickSort(arr){
if(arr.length <= 1) {
return arr
};
var mNumIndex = Math.floor(arr.length/2);
var mNum = arr.splice([mNumIndex], 1)[0];
var left = [];
var right = [];
for (var i = 0; i < arr.length; i++){
if (arr[i] < mNum){
left.push(arr[i])
}else {
right.push(arr[i])
};
};
return quickSort(left).concat([mNum], quickSort(right));
}
console.log(quickSort(arr));
js 手写快排
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 数组方法的小总结 从数组的末尾删除一项,有哪些方法?ary.length--ary.length-=1ary.le...
- 如题 手写一份快排算法.注意, 两边双向找值的时候, 先从最右边起找严格小于基准值的值,再从最左边查找严格大于基准...