|
|
1
1
它可以是一对数据结构:
要搜索时,请在O(log n)时间内在二进制搜索树中进行搜索。 当您要删除时,首先在哈希表中的摊销O(1)中找到节点,然后在二进制搜索树中的摊销O(1)中删除节点。 |
|
|
2
0
如果您的范围合理限制在
您也可以使用
如果删除的数量与范围相比较小,则只保存删除的内容,而不保存可用的数量。 |
|
|
3
0
另一种解决方案是从最初为空的哈希集开始。当有人请求删除时,将该值添加到哈希集。这就是O(1)。 之后有几种方法可以继续。
当然,只要将节点标记为已删除或从树中删除节点,就可以从哈希集中删除该值。 这三种方法都提供了O(log n)搜索,并在搜索过程中分摊删除成本。 |
|
|
Matthew · 发现程序的时间复杂性 2 年前 |
|
|
TreasureGhost · 以下函数的时间复杂度是多少 2 年前 |
|
|
user129393192 · 这个问题的最优算法是什么? 2 年前 |
|
|
3366784 · 使用序列初始化字符串的时间复杂度是多少? 2 年前 |
|
|
data-oil · 在字符串列表中搜索的高效快捷方法 8 年前 |