frkang

博客园 首页 联系 订阅 管理

原理如下:

假如有一组数据,数据为: 7, 5, 4, 9,8,10, 6, 3, 2

 

首先以7 作为参考值,以次序遍历数据,将比7 小的放在7的左边,将比7大的放在7的右边,因此经过一次遍历后,数据为:5,4,6,3,2,7,9,8,10

 

然后利用递归的思想,对7的左边和右边分别再按相同的思想进行排序。

即是:对5,4,6,3,2(参考值5)排序后的结果为

4,3,2,5,6  ->  3,2,4,5,6  ->2,3,4,5,6

对9,8,10 排序后的结果为8,9,10

 

因此最后的排序结果应该是:2,3,4,5,6,7,8,9,10

 

 

在代码实现的时候,经常是采用双向游标,一个位于开头,一个位于结尾;

posted on 2013-09-14 15:46  frkang  阅读(328)  评论(0编辑  收藏  举报