函数名: Ds\PriorityQueue::pop()
适用版本: PHP 7.0+
用法: Ds\PriorityQueue::pop() 函数用于从优先队列中弹出具有最高优先级的值,并将其移除队列。如果优先队列为空,则抛出一个 UnderflowException 异常。
示例:
$queue = new Ds\PriorityQueue();
$queue->push('apple', 3);
$queue->push('banana', 1);
$queue->push('orange', 2);
echo $queue->pop(); // 输出: banana
echo $queue->pop(); // 输出: orange
在上面的示例中,我们实例化了 Ds\PriorityQueue 类,并使用 push() 方法向队列中添加了三个元素,每个元素都有不同的优先级。然后,我们通过调用 pop() 方法从队列中弹出具有最高优先级的值,并将其移除队列。最后,我们打印出弹出的值。
值得注意的是,如果优先队列为空,再次调用 pop() 方法将抛出一个 UnderflowException 异常。因此,在实际使用时,我们可能需要在调用 pop() 方法之前检查队列是否为空。例如:
if (!$queue->isEmpty()) {
echo $queue->pop();
} else {
echo "队列为空!";
}
以上就是 Ds\PriorityQueue::pop() 函数的适用版本、用法和示例。这个函数可以帮助你在优先队列中获取并删除具有最高优先级的值。