Timsort、Quicksort 和 Mergesort 等算法主导着“现实世界”的排序方法。这些比较排序的案例非常实用——它们已被证明是各种环境中性能最高、最稳定、多用途的排序算法。
然而,我们在计算机上排序的几乎所有东西似乎都是可数/部分有序的。数字、字符、字符串,甚至函数都适用于一些有意义的非比较排序方法。这里的一个候选者是基数排序。一般来说,它会比 O(n*log(n)) 表现得更快,在许多复杂度为 O(K*n) -- K 的情况下,大大超过了 n * log(n) 的理论比较排序限制是表示特定项目所需的位数。
是什么赋予了?