Unverified Commit c492a4a6 authored by Shuhao Zhang's avatar Shuhao Zhang Committed by GitHub
Browse files

fix(quick-sort): fix typo

parent b8f6411e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -85,7 +85,7 @@ void quick_sort(T arr[], const int len) {

## 内省排序[^ref4]

内省排序(introspective sort)快速排序和 [堆排序](heap-sort.md) 的结合,由 David Musser 于 1997 年发明。内省排序其实是对快速排序的一种优化,保证了最差时间复杂度为 $O(n\log n)$ 。
内省排序(introspective sort)快速排序和 [堆排序](heap-sort.md) 的结合,由 David Musser 于 1997 年发明。内省排序其实是对快速排序的一种优化,保证了最差时间复杂度为 $O(n\log n)$ 。

内省排序的思路其实很简单,就是限制快速排序最大递归深度为 $\lfloor \log_2n \rfloor$ ,超过限制时就转换为堆排序。这样既保留了快速排序内存访问的局部性,又可以防止快速排序在某些情况下性能退化为 $O(n^2)$ 。