从小到大的排序算法用流程图(原来是这就是排序技术)

如果感觉太枯燥的话,可以重点记排序分为那几大类,那类有几种排序方法和比较次数!

从小到大的排序算法用流程图(原来是这就是排序技术)(1)

首先我没有明白排序技术是干嘛的?还需技术是将一个个无序的序列整理为一个有序非递减顺序排列的序列。

排序的方式有交换类排序法,插入类排序法和选择类排序法三大类。

交换排序法是借助数据元素的“交换”来进行排序的。分为冒泡排序和快速排序。

冒泡排序以数据中的某个元素为参考点,在它后面并小于它的元素称为逆序,然后冒泡排序思想就是两个元素比较和交换,不断消除逆序,直到数据有序。线性表最坏情况下比较次数n(n-1)/2(n为数据长度)。

快速排序的思想是在待排序的元素中选一个元素(往往第一个),然后以元素为分割标准,把大于它的都移它前面,小于它的放它后面,这样分为两个表称为子表,再在子表中重复如上。值得元素为1,完成排序。线性表最坏情况比较n(n-1)/2,但效率比冒泡排序快的多。

插入排序法是将每次排序的元素按其值的大小插入到已经排好的子表中,直到元素全部插入。有简单排序和希尔排序两种。

简单排序法就是所有待排序的元素n分为两个表,一个有序表,一个无序表,第一开始有序表就一个元素,无序表有n-1个,然后在无序表中取一个元素,正确的排在有序表中,重复如上,直到无序表无元素。最坏的比较次数n(n-1)/2。

希尔排序法是先取一个整数(称为增量)d<n,把全部元素分为d个组,把所有距离为d的倍数的元素放在一个组,然后简单插入排序。最坏的比较次数n的r次方(1<r<2)。

选择类排序法就是从待排序中选出最小元素,顺序放在已排好的有序子表后,直到全部序列满足排序要求为止。分为简单选择排序法和堆排序法。

简单选择排序就是在所有元素中找出最小的与第一个交换,在从n-1的找出最小的与第二个交换,直到所有元素有序为止。最坏比较次数n(n-1)/2

堆排序法就是将所有元素n按顺序组成一个完全二叉树 当仅且满足下列条件称为堆。

从小到大的排序算法用流程图(原来是这就是排序技术)(2)

①称为大根堆,所有节点都大于或等于左右子节点;②称为小根堆,所有节点都小于或等于左右子节点。

堆排序最坏情况比较次数nlog2的n次比较。

有什么不明白的,欢迎来撩,一同进步。

从小到大的排序算法用流程图(原来是这就是排序技术)(3)

从小到大的排序算法用流程图(原来是这就是排序技术)(4)

图片来自网上和软件,如有侵权,请联系删除!

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页