您的位置:首页 > 其它

转:快速排序的算法思想

2012-02-09 21:43 357 查看
快速排序的算法思想:

详细参考:http://www.2cto.com/kf/201104/87601.html

待排序数组:黄色底色表示pivot。



2.从后向前移动high,找到第一个小于tmp的数,则将该数移动到low的位置。



3.从前向后移动low,找到第一个大于tmp(4)的数,将其移动到high的位置。



4.然后再向前移动high,试图找到第一个小于tmp(4)的数,但没有找到,此时low与high重叠,将tmp的值放入low的位置,并将low作为pivot返回。



根据新的pivot进行递归调用,将原待排序数组 分解为两块,index区间分别为0~2,4~7,即以下两个子数组

(并未新建数组,只是只关注这个区间的数据,对其进行排序,也就是将问题分解为两个小的子问题,但问题很类似。)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: