码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2020-01-10 18:30:13      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:过程   选择排序   快速排序   --   交换   堆排   演示   inf   有序   

一、快速排序算法步骤:

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.所以互换位置

技术图片

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

标签:过程   选择排序   快速排序   --   交换   堆排   演示   inf   有序   

原文地址:https://www.cnblogs.com/kongbursi-2292702937/p/12177506.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!