# SplPriorityQueue クラス

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

## はじめに

SplPriorityQueue クラスは、優先順位つきキューの主要な機能を提供します。 最大ヒープを使用して実装しています。

> 注意: 優先度が等しい要素の順番は 未定義 です。 優先度が等しい要素の順序は、挿入された順序と異なるかもしれません。

## クラス概要

class SplPriorityQueue implements Iterator, Countable {
/* 定数 */
public const int EXTR_BOTH;
public const int EXTR_PRIORITY;
public const int EXTR_DATA;
/* メソッド */
public function compare(mixed `$priority1`, mixed `$priority2`): int
public function count(): int
public function current(): mixed
public function extract(): mixed
public function getExtractFlags(): int
public function insert(mixed `$value`, mixed `$priority`): true
public function isCorrupted(): bool
public function isEmpty(): bool
public function key(): int
public function next(): void
public function recoverFromCorruption(): true
public function rewind(): void
public function setExtractFlags(int `$flags`): int
public function top(): mixed
public function valid(): bool
}

## 定義済み定数

`SplPriorityQueue::EXTR_BOTH`

`SplPriorityQueue::EXTR_PRIORITY`

`SplPriorityQueue::EXTR_DATA`

## 目次

- SplPriorityQueue::compare — 要素の優先順位を比較し、ヒープ内の適切な位置に置く
- SplPriorityQueue::count — キュー内の要素数を数える
- SplPriorityQueue::current — イテレータが指す現在のノードを返す
- SplPriorityQueue::extract — ヒープの先頭からノードを取り出す
- SplPriorityQueue::getExtractFlags — 展開する時のフラグを取得する
- SplPriorityQueue::insert — キューに要素を挿入する
- SplPriorityQueue::isCorrupted — 優先度付きキューが壊れているかを調べる
- SplPriorityQueue::isEmpty — キューが空かどうかを調べる
- SplPriorityQueue::key — 現在のノードのインデックスを返す
- SplPriorityQueue::next — 次のノードに移動する
- SplPriorityQueue::recoverFromCorruption — 破壊されたキューを復旧し、それ以降の操作をできるようにする
- SplPriorityQueue::rewind — イテレータを先頭に巻き戻す (何もしない)
- SplPriorityQueue::setExtractFlags — 取り出しモードを設定する
- SplPriorityQueue::top — キューの先頭のノードを取り出す
- SplPriorityQueue::valid — キューにまだノードがあるかどうかを調べる

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open