大叔控06 阅读:102次 时间:2018-02-26 17:17:37其实快速排序算法也可以理解为相邻两个比大小,然后换位置,将两个指针i,j分别指向表的起始和最后的地方,反复操作以下两步:(1)j逐渐减小,并逐次比较j指向的元素和目标元素的尺寸,若p(j)<T则交换位置,(2)i逐渐增大,并逐次比较i指向的元素和目标元素的尺寸,若p(i)>T则交换位置,直到i,j指向同一个值,循环结束,以下内容是由微蓝经验网用户发布快速排序算法实例,希望对于用户有一定帮助,为朋友进行解决疑惑,如若想了解更多相关内容,可以向底部移动了解更多与本教程文章相关解决经验方法!
首先设置两个变量i,j。
分别指向(代表)序列的首尾元素。

就是以第一个元素为基准,从小到大进行排列。
让j从后向前进行查询,直到找到第一个小于66的元素。
则将最后一个j指向的数23,和i指向的66交换位置。
然后将i从前向后查询,直到找到第一个大于66的元素76.

将76和66位置互换。
让j从后向前进行查询,直到找到第一个小于66的元素57

将57和66交换位置。

随后将i从前向后查询,直到找到第一个大于66的元素81.

将81和66交换位置。
让j从后向前进行查询,直到找到第一个小于66的元素26

将26和66交换位置。
此时i,j都同时指向了目标元素66.
查找停止。
所得到的序列就是第一趟排序的序列

声明 未经许可,请勿转载。
© 2025 VLPOS.com 版权所有 微蓝网 ICP备案号:黑ICP备20003952号-1