區間的堆操作的複雜性


雙端優先順序佇列 (DEPQ) 或區間堆具有以下操作 −

isEmpty()

此函式檢查 DEPQ 是否為空,如果為空則返回 true。

size()

此函式返回 DEPQ 中存在的元素總數。

getMin()

此函式返回具有最低優先順序的元素。

getMax()

此函式返回具有最高優先順序的元素。

put(z)

此函式將在 DEPQ 中插入元素 z。

removeMin()

此函式刪除具有最小優先順序的元素並返回此元素。

removeMax()

此函式刪除具有最高優先順序的元素並返回此元素。

  • isEmpty()、size()、getMin() 和 getMax() 操作各消耗 O(1) 的時間;
  • put(z)、removeMin() 和 removeMax() 各消耗 O(log n) 的時間;
  • 初始化一個具有 n 個元素的區間堆需要 O(n) 的時間。

更新時間: 03-1月-2020

165 次瀏覽

開啟你的職業生涯

完成該課程即可獲得認證

開始學習
廣告