タグ

listとheapに関するnabinnoのブックマーク (1)

  • 優先度付きキュー - Wikipedia

    優先度付きキュー(ゆうせんどつきキュー、英: priority queue)は、以下の4つの操作をサポートする抽象データ型である。 キューに対して要素を優先度付きで追加する。 最も高い優先度を持つ要素をキューから取り除き、それを返す。 (オプション) 最も高い優先度を持つ要素を取り除くことなく参照する。 (オプション) 指定した要素を取り除くことなく優先度を変更する 実装[編集] 優先度付きキューを実装する最も簡単な方法は、連想配列を用いて、それぞれの優先度に要素のリストを繋げることである。連想リストやハッシュテーブルを連想配列の実装に用いた場合は、要素の追加はO(1)であるが、要素の削除や先頭の参照にはすべてのキーを探索しなければならないのでO(n)かかる。もし、平衡2分探索木を使用した場合は、上記の3つの操作をO(log n)で行うことができる。平衡木は用意されているが、それ以上のもの

  • 1