快速排序
基本思想
- 先从数列中取出一个数作为基准数。
- 分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。
- 再对左右区间重复第二步,直到各区间只有一个数。
- 选择最左侧元素为基准数pivot,并记录
- 设置两个变量l和r分别指向头尾元素
- 从后向前搜索,直至找到比pivot小的数字,记录当时r值,并将该元素替换到pivot
- 从前向后搜索,直至找到比pivot大的数字,记录当前l值,并将该原子替换到下标为r的位置
- 当l==r时,将pivot赋值到此位置
public class Quick_Sort {public static void quick_sort(int[] array,int left,int right){
if (array==null||array.length<=0){
return;
}
if (left=pivot){
r--;
}
if (l【快速排序】
推荐阅读
- 做一件事情的基本原理是什么()
- dubbo基本认识
- 一个选择排序算法
- HTML基础--基本概念--跟着李南江学编程
- 排序(归并排序)
- 7、前端--jQuery简介、基本选择器、基本筛选器、属性选择器、表单选择器、筛选器方法、节点操作、绑定事件
- 【图解】9张图彻底搞懂堆排序
- 一般模型化关系——从模型是什么到如何起作用的基本答案
- canvas(一)基本用法
- 带你了解类型系统以及flow和typescript的基本使用