|
|
1
43
标准不需要特定的算法,只需要它必须是稳定的,并且它使用大约n lg n的比较完成排序。例如,允许合并排序或快速排序的链接列表版本(与流行的观点相反,快速排序不是 必要地 不稳定,即使最常见的数组实现是)。
有了这个条件,最简单的答案是在大多数当前的标准库中,
但是,这两种方法通常都需要随机访问迭代器,并且在处理类似于链表的内容时工作得很糟糕(如果有的话)。为了获得链接列表的良好性能,标准包括
|
|
|
2
13
它完全是实现定义的。标准所说的唯一一件事就是它的复杂性是O(n lg n),而这种复杂性是 稳定的 . 也就是说,等元素的相对顺序在排序后保证不变。
希望有帮助:) |
|
|
3
-2
尽管它依赖于实现/供应商,但我知道的大多数实现都使用IntroSort,其最佳和最差的情况复杂性是O(nlogn)。 |
|
|
feasega · 聚合物模拟-2个节点之间的最短路线,适用于所有节点 1 年前 |
|
|
Alisa Petrova · 在有向图中更改一对顶点以创建循环 1 年前 |
|
|
b39b332d · 使用C++标准库实现高效间隔存储 2 年前 |
|
ABGR · 二叉树的直径——当最长路径不通过根时的失败案例 2 年前 |
|
|
EpicAshman · 数独棋盘程序中同一列和同一行出现两次的数字 2 年前 |