字典序
1 < 2
10 < 9,因为 10 的前缀是 1,比 9 小
112 < 12,因为 112 的前缀是 11,比 12 小
十大排序
排序稳定性
排序稳定性是指,对于相同权重的值,排序后是否还能保证先后顺序一致
如:现有序列 {4, 2, 3, 2, 1}
标记为 {4, 第一个2, 3, 第二个2, 1}
不稳定排序后可能变为 {1, 第二个2, 第一个2, 3, 4}
而稳定排序则变为 {1, 第一个2, 第二个2, 3, 4}
比较排序 | 最好 | 平均 | 最坏 | 空间复杂度 | 稳定性 |
---|---|---|---|---|---|
⭐ 快速排序 | n log 2 n n\log_{2}{n} nlog2n | n log 2 n n\log_{2}{n} nlog2n | n 2 n^2 n2 | log 2 n \log_2n log2n | × \times × |
⭐堆排序 | n log 2 n n\log_{2}{n} nlog2n | n log 2 n n\log_{2}{n} nlog2n | n log 2 n n\log_{2}{n} nlog2n | 1 1 1 | × \times × |
选择排序 | n 2 n^2 n2 | n 2 n^2 n2 | n 2 n^2 n2 | 1 1 1 | × \times × |
希尔排序 | n log 2 n n\log_2n nlog2n | n 1.3 n^{1.3} n1.3 | n 2 n^2 n2 | 1 1 1 | × \times × |
稳定排序 | |||||
冒泡排序 | n n n | n 2 n^2 n2 |