Клас SplPriorityQueue
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
Вступ
Клас SplPriorityQueue забезпечує основні функціональні можливості пріоритетної черги, реалізований за допомогою купи з максимальним елементом нагорі (max-heap).
Зауваження: Порядок елементів з однаковим пріоритетом не визначений. Він може відрізнятись від порядку, в якому елементи були вставлені.
Огляд класів
class SplPriorityQueue
implements
Iterator,
Countable {
/* Константы */
public
const
int
EXTR_BOTH;
public
const
int
EXTR_PRIORITY;
public
const
int
EXTR_DATA;
/* Методы */
public compare(mixed $priority1, mixed $priority2): int
public count(): int
public current(): mixed
public extract(): mixed
public getExtractFlags(): int
public insert(mixed $value, mixed $priority): true
public isCorrupted(): bool
public isEmpty(): bool
public key(): int
public next(): void
public recoverFromCorruption(): bool
public rewind(): void
public setExtractFlags(int $flags): int
public top(): mixed
public 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— Перевіряє, чи є у черзі ще елементи