The PriorityQueue class

Introduction

(No version information available, might only be in Git)

A PriorityQueue is very similar to a Queue. Values are pushed into the queue with an assigned priority, and the value with the highest priority will always be at the front of the queue.

Implemented using a max heap.

Note:

"First in, first out" ordering is preserved for values with the same priority.

Note:

Iterating over a PriorityQueue is destructive, equivalent to successive pop operations until the queue is empty.

Class synopsis

Ds\PriorityQueue implements Ds\Collection {
/* Constants */
const int MIN_CAPACITY = 8 ;
/* Methods */
public allocate ( int $capacity ) : void
public capacity ( ) : int
public clear ( ) : void
public copy ( ) : Ds\PriorityQueue
public isEmpty ( ) : bool
public peek ( ) : mixed
public pop ( ) : mixed
public push ( mixed $value , int $priority ) : void
public toArray ( ) : array
}

Predefined Constants

Ds\PriorityQueue::MIN_CAPACITY

Table of Contents

© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/class.ds-priorityqueue.php