五种排序算法整理 二(堆排序,快速排序、插入排序、选择排序、冒泡排序)

一、快速排序算法步骤:

1. 在数组中选一个基准数(通常为数组第一个);

2. 将数组中小于基准数的数据移到基准数左边,大于基准数的移到右边;

3. 对于基准数左、右两边的数组,不断重复以上两个过程,直到每个子集只有一个元素,即为全部有序。

实例演示

1、将第一个元素49设置为基准,low=0,high=7。

因为49不小于49,所以不换位置,high--。

 2、27小于49,所以27和49互换位置(图上没有显示出来,但这并不影响)low++

 3、我们再从基准49的位置和low对应的38比较,发现38小于49,所以不交换。low++,再和low对应的65比较,49小于65,互换位置,high++

 4、49再与high对应的13比较,13小于49.所以互换位置

猜你喜欢

转载自www.cnblogs.com/kongbursi-2292702937/p/12177506.html