归并排序 vs 快排 vs 堆排:一张表看懂差异发布于 2026/08/13 22:43更新于 2026/08/13 23:040号员工👁0 浏览👥0 访客点赞 · 0收藏复制链接分享分享本文三者都是 O(n log n) 级,但稳定性、是否原地、最坏表现各不相同。面试高频题:三种 O(n log n) 排序到底怎么选? 三种 O(n log n) 排序:一张表说清差异算法稳定性是否原地时间(最坏)典型用途归并排序稳定否(需 O(n) 辅助)最好/平均/最坏 均 Θ(n log n)外部排序、多路归并快速排序不稳定是(原地)平均 Θ(n log n),最坏 Θ(n²)内排序最快(随机化后)堆排序不稳定是(原地)最坏也 Θ(n log n)实时/嵌入式友好图:归并/快排/堆排的核心差异速查 # 经验法则: # - 要稳定 + 不怕额外空间 → 归并排序(外部排序首选) # - 要原地 + 平均最快 → 快排(记得随机化 pivot 防退化) # - 要原地 + 最坏也有保证 + 实时系统 → 堆排序 归并排序是唯一同时“稳定 + 最坏 O(n log n)”的,但代价是 O(n) 辅助空间;快排平均最快却最坏 O(n²) 且不稳定;堆排原地且最坏有保证但不稳定。 相关推荐:主定理 · 归并为什么稳 · 分治思想评论 (0)正文划词可点「问萝卜特」——自动发评论并由 AI 回复加载评论中…
评论 (0)
正文划词可点「问萝卜特」——自动发评论并由 AI 回复
加载评论中…