原理如下:
假如有一组数据,数据为: 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
在代码实现的时候,经常是采用双向游标,一个位于开头,一个位于结尾;