JS实现快速排序
2017-04-13 17:47
253 查看
大致分三步:
1、找基准(一般是以中间项为基准)
2、遍历数组,小于基准的放在left,大于基准的放在right
3、递归
1、找基准(一般是以中间项为基准)
2、遍历数组,小于基准的放在left,大于基准的放在right
3、递归
function quickSort(arr){ //如果数组<=1,则直接返回 if(arr.length<=1){return arr;} var pivotIndex=Math.floor(arr.length/2); //找基准,并把基准从原数组删除 var pivot=arr.splice(pivotIndex,1)[0]; //定义左右数组 var left=[]; var right=[]; //比基准小的放在left,比基准大的放在right for(var i=0;i<arr.length;i++){ if(arr[i]<=pivot){ left.push(arr[i]); } else{ right.push(arr[i]); } } //递归 return quickSort(left).concat([pivot],quickSort(right)); }
相关文章推荐
- 用JS实现冒泡排序、插入排序、选择排序、快速排序
- js实现常见的三种排序方法(冒泡排序、快速排序、归并排序)
- JS实现快速排序
- 快速排序的js递归实现
- JS实现随机化快速排序的实例代码
- js实现快速排序
- JS实现快速排序
- JS实现随机化快速排序的实例代码
- js实现快速排序
- JS实现快速排序
- 快速排序的两种实现
- js 静态HTML表格排序功能实现
- JS实现table行增加行删除及元素排序
- 快速排序的JAVA实现
- jsp+js实现可排序表格
- js 静态HTML表格排序功能实现
- vb应用--快速排序-法实现二维数组的指定列排序
- 快速排序其他实现代码
- js实现列表框选项的删除,排序,俩列表框间的选项传递。
- 排序算法复习(Java实现)(一): 插入,冒泡,选择,Shell,快速排序