[API] java.util.PriorityQueue

PriorityQueueは要素を優先順位に従って格納・取得されるデータ構造です。
優先度キューとも呼ばれます

PriorityQueueの特徴

PriorityQueueは以下の特徴があります。

  • 要素の重複:〇
  • null値の要素:×
  • 自動ソート:〇
  • スレッドセーフ:×

PriorityQueueのAPI

【主要メソッド】
戻値型メソッド静的説明
booleanadd(E e)要素eを優先度キューに挿入する
voidclear()優先度キューからすべての要素を削除する
booleancontains(Object o)要素oが優先度キューに含まれている場合はtrueを返す
booleanoffer(E e)要素eを優先度キューに挿入する
Epeek()キューの先頭を取得する(削除はしない)
Epoll()キューの先頭を取得する(削除もする)
booleanremove(Object o)要素oが存在する場合はキューから削除する
intsize()キューの要素数を返す

PriorityQueueサンプル

(優先度が最も低い要素を取り出す)

PriorityQueue<Integer> pq = new PriorityQueue<>();
pq.add(3);
pq.add(1);
pq.add(2);

while (!pq.isEmpty()) {
  System.out.println(pq.poll());  //優先度が最も低い要素を取り出す
}

→ 1 2 3

コメント

タイトルとURLをコピーしました