【问题标题】:is there a data structure with the following properties:是否存在具有以下属性的数据结构:
【发布时间】:2013-10-07 22:16:53
【问题描述】:

给定 n 个元素,数据结构具有以下运行时复杂性:

求最小元素是Θ(1),
删除最小元素为Θ(lg n)

插入一个元素是Θ(lg n)

我做了研究,我不知道这种快速的数据结构

【问题讨论】:

  • 最小堆可能吗?我想到的第一件事。
  • 可能是符号表的树实现,但不确定
  • 这听起来像是一堆,但我可能会遗漏一些东西,因为你很容易找到它
  • 红黑树,实际上是最平衡的树,也应该具有这些属性。
  • @justin: 是的 min-heap 是正确的答案,你应该把它作为答案

标签: data-structures


【解决方案1】:

来自维基百科: http://en.wikipedia.org/wiki/Heap_(data_structure)

Operation       Binary      Binomial    Fibonacci
find-min        Θ(1)        Θ(1)        Θ(1)
delete-min      Θ(log n)    Θ(log n)    O(log n)*
insert          Θ(log n)    O(log n)    Θ(1)
decrease-key    Θ(log n)    Θ(log n)    Θ(1)*
merge           Θ(n)        O(log n)**  Θ(1)
(*) Amortized time
(**) Where n is the size of the larger heap

【讨论】:

  • 现在很清楚了,我读了这篇文章,它只是简单地描述了操作!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多