本文的目的
在上一章中,我们已经详细介绍了排序的相关概念学习笔记——排序简介。本文旨在详细介绍快速排序。
快速排序
快速排序是冒泡排序(学习笔记-详细冒泡排序)的改进,也是一种交换排序。
快速排序是由C. A. R .霍尔在1960年提出的。它的基本思想是:通过一次排序,把要排序的数据分成两个独立的部分,其中一个部分的所有数据小于另一个部分的所有数据,然后按照这种方法对这两个部分的数据进行快速排序,这样就可以进行整个排序过程,对整个数据进行排序。
算法原理
这是分而治之思想的应用。首先选择一个元素作为边界值,将大于边界值的元素放在数组右侧,将小于主成分的元素放在数组左侧,保持元素与边界值相等的位置不变。然后,重复上述规则,完成排序。
快速排序的原理如下:
1,先设置一个边界值,通过它把数组分成左右两部分。
2.将大于或等于边界值的数据集中在数组的右侧,将小于边界值的数据集中在数组的左侧。此时,左边部分的所有元素都小于或等于边界值,而右边部分的所有元素都大于或等于边界值。
3.然后,左右两边的数据可以独立排序。对于左边的数组数据,也可以取一个边界值,将这部分数据分成两部分,即左边较小的值和右边较大的值。右侧的数组数据也可以类似的方式处理。
4.通过重复上述过程,可以看出这是一个递归定义。递归地把左边部分按顺序排好,然后递归地把右边部分按顺序排好。当左右两部分的数据排序完毕,整个数组的排序也就完成了。
算法实现
#include
以上就是由优质生活领域创作者 嘉文社百科网小编 整理编辑的,如果觉得有帮助欢迎收藏转发~
本文标题:如何进行排序(数据进行排序)
本文地址:https://www.jwshe.com/613664.html,转载请说明来源于:嘉文社百科网
声明:本站部分文章来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。分享目的仅供大家学习与参考,不代表本站立场。
本文地址:https://www.jwshe.com/613664.html,转载请说明来源于:嘉文社百科网
声明:本站部分文章来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。分享目的仅供大家学习与参考,不代表本站立场。