网站管理与建设试题,河南省建设集团,wordpress教程外贸,网站要怎么盈利排序总览 外部排序#xff1a;依赖硬盘#xff08;外部存储器#xff09;进行的排序。对于数据集合的要求特别高#xff0c;只能在特定场合下使用#xff08;比如一个省的高考成绩排序#xff09;。包括桶排序#xff0c;基数排序#xff0c;计数排序#xff0c;都是o…排序总览 外部排序依赖硬盘外部存储器进行的排序。对于数据集合的要求特别高只能在特定场合下使用比如一个省的高考成绩排序。包括桶排序基数排序计数排序都是o(n)
1.什么是稳定性
待排序的元素中有两个相同的数据如果排序后它们的相对位置与排序前一致就称为稳定
例子taobao商城有两个用户下单的金额都是8元 1 2023/8/5 15:00 8rmb 2 2023/8/5 15:06 8rmb
要求先按照时间排序然后按照金额排序那么排序后顺序仍然是1 2 1先下单就先发货。
1.选择排序 不稳定
每次从无序区间中选择一个最小或者最大值放在有序区间的最前或者最后位置此位置的元素已经有序直到所有的数据都排序结束。 双向选择排序 2.插入排序 稳定 插入排序和选择排序最大的不同
插入排序当前遍历的元素 前驱元素此时可以提前结束内存循环。
极端情况下当集合是一个完全有序的集合插入排序的内存循环一次都不走插入排序变成o(n).
插入排序经常用作告诫排序算法的优化手段之一。
3.折半插入排序 4.希尔排序 先选定一个整数gap,一般选取一个数组长度的一半将待排序的数组先按照gap分组不同组之间内部用插入排序排序之后在将gap/2,不断缩小gap重复上述流程直到gap1。
当gap1整个数组已经近乎有序。在整个数组上进行一次插入排序就排序完成了。 此时数组已经近乎有序,gap1,进行一次插入排序数组就完全有序了。