我遇到了一个本地竞赛题如下。
如果在空的 MIN-Heap
上,我们执行 n
任意 insert
和 delete
操作,(给定位置在最小堆中删除)。 insert
和delete
的摊销分析
是什么?
I) insert O(log n), delete O(1)
II) insert O(log n), delete O(log n)
III) insert O(1), delete O(1)
IV) insert O(1), delete O(log n)
我认为这是这个问题的问题,因为未定义堆类型。我在谷歌上读到我们有一些堆的选项 (1) 和 (4)。从专家的角度来看,我们可以用这个问题说 我们可以选择所有选项为 True 吗?
最佳答案
你是对的 - 这个问题不正确。最小堆是一种支持 push 和 popMin 操作的抽象数据结构,它可以以多种不同的方式实现。根据实现的不同,操作的复杂性会有所不同。此外,在给定位置删除不是类最小堆操作。除非问题中有更多上下文,否则它没有明确定义。
关于algorithm - 摊销分析和竞赛题,有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29536895/