0%

排序算法

八大排序算法知识。

待完善……

数据结构常用的八大排序算法分别是:选择排序、冒泡排序、插入排序、快速排序、归并排序、基数排序、希尔排序和堆排序。以下对这八种排序算法的性能进行比较:

排序算法 时间复杂度 空间复杂度 稳定性
选择排序 $O(n^2)$ $O(1)$ 不稳定
冒泡排序 $O(n^2)$ $O(1)$ 稳定
插入排序 $O(n^2)$ $O(1)$ 稳定
快速排序 $O(n\log_2{n})$ $O(1)$ 不稳定
归并排序 $O(n\log_2{n})$ $O(1)$ 稳定
基数排序 $O(d(r+n))$ $O(rd+n)$ 稳定
希尔排序 $O(n^{1.3})$ $O(1)$ 不稳定
堆排序 $O(n\log_2{n})$ $O(1)$ 不稳定

基数排序的复杂度中,r代表关键字的基数,d代表长度,n代表关键字的个数。

相关链接

  1. Data Structure Visualizations

  2. 数据结构常见的八大排序算法(详细整理) By 竹雨听闲

  3. C语言实现八大排序算法(一) By bluesliuf