跳到主要内容
uencoder

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)

相关词条

相关工具

参考链接