排序方法
| 算法 | 时间复杂度(最坏) | 时间复杂度(最好) | 时间复杂度(平均) | 是否稳定 |
|---|---|---|---|---|
| 归并排序 | O(n log n) | O(n log n) | O(n log n) | ✅ 稳定 |
| 插入排序 | O(n²) | O(n) | O(n²) | ✅ 稳定 |
| 选择排序 | O(n²) | O(n²) | O(n²) | ❌ 不稳定 |
| 冒泡排序 | O(n²) | O(n) | O(n²) | ✅ 稳定 |
补充说明
-
时间复杂度:
- O(n log n):表示算法效率较高,适合处理大规模数据(如归并排序)。
- O(n²):表示效率较低,适合小规模数据或教学演示(如插入排序、选择排序、冒泡排序)。
- O(n):表示在特定情况下(如数组已有序)效率最优。
-
稳定性:
- 稳定:相同元素的相对顺序在排序后保持不变(如归并排序、插入排序、冒泡排序)。
- 不稳定:相同元素的相对顺序可能被改变(如选择排序)。