Module core::slice::sort

source ·
🔬This is a nightly-only experimental API. (slice_internals)
Expand description

切片分类

该模块包含基于 Orson Peters 的模式失败快速排序的排序算法,发布于: https://github.com/orlp/pdqsort

不稳定排序与核心兼容,因为它不分配内存,这与我们的稳定排序实现不同。

此外还包含了 slice::sort 基于 TimSort 使用的稳定排序的核心逻辑。

Structs

  • TimSortRunExperimental
    merge_sort 使用的内部类型。

Functions

  • heapsortExperimental
    使用堆排序对 v 进行排序,这保证了 O(n*log(* n*)) 最坏的情况。
  • merge_sortExperimental
    这个归并排序借用了一些 (但不是全部) 来自 TimSort 的想法,它曾经被详细描述在 这里。 但是 Python 已经切换到基于 Powersort 的实现。
  • quicksortExperimental
    使用模式破坏快速排序对 v 进行排序,这是 O(n*log(* n*)) 最坏的情况。