![]() |
1
2
里面没有集装箱
任何序列容器都不能插入到小于O(size())的任意位置。
关联或无序关联容器都无法在小于O(i)的范围内找到第i个索引。
容器适配器都没有帮助,因为它们仍然具有底层容器的插入特性。 您需要实现自己的容器来满足您的复杂性要求。类似于A Indexable Skip List 将工作。 |
![]() |
2
0
在实践中:
如果没有冲突,请在给定位置插入(列表为O(1),向量为O(N),但在许多实际情况下,后者可能仍然更快。)
理论上:使用
您可以通过将间隔标记为“未使用”来“降低”擦除成本;例如通过使它们等于长度0。这意味着插入必须检查的不仅仅是直接的继承者,而且它仍然在摊销O(1)附近 除了 对于最坏的工作负载。 |
![]() |
feasega · 聚合物模拟-2个节点之间的最短路线,适用于所有节点 6 月前 |
![]() |
Alisa Petrova · 在有向图中更改一对顶点以创建循环 6 月前 |
![]() |
b39b332d · 使用C++标准库实现高效间隔存储 11 月前 |
![]() |
Paul C · 在维基百科上,将二叉搜索树转换为排序链表的算法是否存在错误? 11 月前 |
![]() |
ABGR · 二叉树的直径——当最长路径不通过根时的失败案例 11 月前 |
![]() |
EpicAshman · 数独棋盘程序中同一列和同一行出现两次的数字 11 月前 |