各位看官们,大家好,上一回中咱们说的是选择排序的例子,这一回咱们说的例子是:快速排序。闲话休
提,言归正转。让我们一起talk C栗子吧!
快速排序的原理:选定一个关键字,使容器分为两部分,一部分中的任何元素都关键字大,另一部分中的
任何元素都比关键字小。然后分别对这两个部分进行排序。
快速排序的实现步骤:
- 1.选定一个关键字,我在代码里直接使用容器头部元素为关键字;
- 2.从容器的尾部到头部遍历容器,直到遇见到比关键字小的元素,然后将它交换到关键点的左边;
- 3.从容器的头部到尾部遍历容器,直到遇见到比关键字大的元素,然后将它交换到关键点的右边;
- 4.反复进行步骤2和3,直到步骤2和3中在遍历过程中相遇为止;
- 5.此时,找到了容器的分界点,分界点左边的元素比关键字大,右边的元素比关键点小;
- 6.对分界点左边的元素重复步骤1到步骤5,在程序中使用递归来实现这个步骤;
- 7.对分界点右边的元素重复步骤1到步骤5,在程序中使用递归来实现这个步骤。
看官们,正文中就不写代码了,详细的代码放到了我的资源中,大家可以点击这里下载使用。快速排序是
所有排序算法中性能最好的,这也是叫它快速排序的原因。
各位看官,关于快速排序的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解。