Sorting Algorithm
排序算法将元素按序排列,常见有快速排序、归并排序、堆排序等,复杂度从 O(n log n) 到 O(n²)。
用途
将无序数据有序化,是搜索、去重与展示的基础操作。
机制
比较排序下界 O(n log n)。快排平均 O(n log n) 最坏 O(n²) 原地。归并 O(n log n) 稳定需 O(n) 空间。堆排 O(n log n) 原地。计数/基数排序非比较可 O(n)。稳定排序保持相等元素相对顺序。
用例
- 数据库 ORDER BY
- 搜索前预处理
- 排行榜与排名
- 去重(排序+相邻比较)
示例
- 输入
[3,1,4,1,5] → quicksort输出[1,1,3,4,5]O(n log n) average
常见错误
- Quicksort recursion overhead is high for small arrays
- Use insertion sort for small arrays (a quicksort optimization)