//找中间元素作为基准排序
<script>
var arr = [10,3,5,9,78,32];
var sort = function(arr){
if(arr.length<=1){
return arr
}
//找基准下标
var index = Math.floor(arr.length/2);
//找基准
var pivot = arr.splice(index,1)[0]
var left = [];
var right = [];
for(var i = 0; i<arr.length; i++){
if(arr[i]<pivot){
left.push(arr[i])
}else{
right.push(arr[i])
}
}
return sort(left).concat([pivot],sort(right))
}
console.log(sort(arr))
</script>
算法之快速排序
最新推荐文章于 2024-07-25 11:27:31 发布