9
抽出を持つ優先度キューが存在しますか?
プライオリティキューインターフェイスを実装するデータ構造は非常に多くあります。 挿入:構造に要素を挿入します Get-Min:構造内の最小要素を返します Extract-Min:構造内の最小要素を削除します このインターフェイスを実装する一般的なデータ構造は、(最小)ヒープです。 通常、これらの操作の(償却)実行時間は次のとおりです。 挿入:(時々O(log n ))O(1)O(1)\mathcal{O}(1)O(ログn )O(logn)\mathcal{O}(\log n) Get-Min:O(1)O(1)\mathcal{O}(1) Extract-Min:O(ログn )O(logn)\mathcal{O}(\log n) フィボナッチヒープは、例えば、これらの実行中の時間を実現します。さて、私の質問は次のとおりです。 次の(償却)実行時間のデータ構造はありますか? 挿入:O(ログn )O(logn)\mathcal{O}(\log n) Get-Min:O(1)O(1)\mathcal{O}(1) 抽出分:O(1)O(1)\mathcal{O}(1) ソートされた入力が与えられたときに時間でそのような構造を構築できる場合、例えば、o (nO(n)O(n)\mathcal{O}(n)交差点は、「通常の」優先度キューを使用する場合よりも厳密に高速です。o (nログn)o(nlogn)o\left(\frac{n}{\log n}\right)