auto commit

This commit is contained in:
CyC2018 2018-08-15 22:27:28 +08:00
parent d655c65eff
commit a14c6fd5fd

View File

@ -770,14 +770,14 @@ public class HeapSort<T extends Comparable<T>> extends Sort<T> {
| 算法 | 稳定 | 时间复杂度 | 空间复杂度 | 备注 | | 算法 | 稳定 | 时间复杂度 | 空间复杂度 | 备注 |
| :---: | :---: |:---: | :---: | :---: | | :---: | :---: |:---: | :---: | :---: |
| 选择排序 | :heavy_check_mark:| N<sup>2</sup> | 1 | | | 选择排序 | | N<sup>2</sup> | 1 | |
| 冒泡排序 | :heavy_check_mark: | N<sup>2</sup> | 1 | | | 冒泡排序 | | N<sup>2</sup> | 1 | |
| 插入排序 | :heavy_check_mark: | N \~ N<sup>2</sup> | 1 | 时间复杂度和初始顺序有关 | | 插入排序 | | N \~ N<sup>2</sup> | 1 | 时间复杂度和初始顺序有关 |
| 希尔排序 | :heavy_multiplication_x: | N 的若干倍乘于递增序列的长度 | 1 | | | 希尔排序 | × | N 的若干倍乘于递增序列的长度 | 1 | |
| 快速排序 | :heavy_multiplication_x: | NlogN | logN | | | 快速排序 | × | NlogN | logN | |
| 三向切分快速排序 | :heavy_multiplication_x: | N \~ NlogN | logN | 适用于有大量重复主键| | 三向切分快速排序 | × | N \~ NlogN | logN | 适用于有大量重复主键|
| 归并排序 | :heavy_check_mark: | NlogN | N | | | 归并排序 | | NlogN | N | |
| 堆排序 | :heavy_multiplication_x: | NlogN | 1 | | | | 堆排序 | × | NlogN | 1 | | |
快速排序是最快的通用排序算法,它的内循环的指令很少,而且它还能利用缓存,因为它总是顺序地访问数据。它的运行时间近似为 \~cNlogN这里的 c 比其他线性对数级别的排序算法都要小。使用三向切分快速排序,实际应用中可能出现的某些分布的输入能够达到线性级别,而其它排序算法仍然需要线性对数时间。 快速排序是最快的通用排序算法,它的内循环的指令很少,而且它还能利用缓存,因为它总是顺序地访问数据。它的运行时间近似为 \~cNlogN这里的 c 比其他线性对数级别的排序算法都要小。使用三向切分快速排序,实际应用中可能出现的某些分布的输入能够达到线性级别,而其它排序算法仍然需要线性对数时间。