参考 原理详解
由于数组没有什么特殊性,所以要想排序的事件复杂度低,可以选择快速排序、归并排序、或者堆排序。在这里选择快速排序
快排:选择一个基数。每次将数组划分为大于这个基数的部分,小于这个基数的部分。然后递归处理。 设置两个指针,i指开头,j指末尾,先移动j
<script>
function quickSort(arr,begin,end) {
if(begin<end){
let i=begin;
let j=end;
let pivot=arr[begin];
while(i<j){
while(arr[j]>pivot && i<j){
j--;
}
arr[i]=arr[j];
while(arr[i]<pivot && i<j){
i++;
}
arr[j]=arr[i];
}
arr[i]=pivot;
quickSort(arr,begin,i-1);
quickSort(arr,i+1,end);
}else{
return;
}
}
arr=[9,10,1,33,256,78,43];
quickSort(arr,0,arr.length-1);
console.log(arr);
最后
以上就是追寻黑猫最近收集整理的关于JS实现快速排序的全部内容,更多相关JS实现快速排序内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复