内排序主要分为四类:插入排序类、选择排序类、交换排序类、归并排序类。 插入排序类 直接插入排序 希尔排序 选择排序类 简单选择排序 堆排序 交换...
快速排序:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字比另一部记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个...
归并排序:假设初始序列含有n个记录,则可以看成是n个有序的子序列,每个子序列的长度为1,然后两两归并,得到⌈n / 2⌉(向上取整)个长度为2或...
堆排序:将待排序的序列构造成一个大顶堆。此时,整个序列的最大值就是堆顶的根节点。将根节点与堆的末尾元素交换,此时末尾元素就是最大值。然后将剩下的...
希尔排序:对顺序表按增量k进行排序,如第n个元素和第n - k个元素进行比较,若逆序则交换;每轮排序后,增量k将减少,当增量k = 1时,顺序表...
直接插入排序:将一个记录插入到已经排序好的有序表中,从而得到一个新的、记录数增1的有序表。 直接插入排序的平均时间复杂度为O(n^2)。
简单选择排序:在每一轮循环中(第n轮),从剩下的元素中遍历,选出本轮的最小元素,放到第n个位置。循环完n - 1轮后,顺序表中的元素即有序。 简...
冒泡排序:这是一种交换排序,基本思想是:两两比较相邻记录的关键字,如果前面的元素比后面元素大(反序),则进行交换,直到没有反序的元素为止。 冒泡...
散列表:散列技术是在记录的存储位置和它的关键字之间建立一个确定的对应关系f,使得每个关键字key对应一个存储位置f(key),使用散列技术将记录...
文集作者