查詢

SplHeap::extract()函式—用法及示例

「 從堆中提取並移除最小(或最大)的元素 」


函式名:SplHeap::extract()

適用版本:PHP 5 >= 5.3.0, PHP 7

用法:SplHeap::extract() 方法用於從堆中提取並移除最小(或最大)的元素。提取的元素將被從堆中刪除,並返回該元素的值。

語法:public SplHeap::extract ( void ) : mixed

引數:無

返回值:提取的元素的值,如果堆為空則返回 NULL。

示例:

// 建立一個最大堆
class MaxHeap extends SplMaxHeap {
    public function compare($value1, $value2) {
        return $value1 - $value2;
    }
}

// 例項化最大堆
$heap = new MaxHeap();

// 新增元素到堆中
$heap->insert(10);
$heap->insert(5);
$heap->insert(8);
$heap->insert(15);

// 提取並移除最大的元素
$extractedValue = $heap->extract();

echo "提取的元素值為:" . $extractedValue; // 輸出:提取的元素值為:15

在上面的示例中,我們建立了一個最大堆(MaxHeap),並向堆中新增了一些元素。然後我們使用SplHeap::extract()方法提取並移除了堆中的最大元素(值為15),然後將該值輸出。請注意,由於我們建立的是最大堆,所以提取的元素是堆中的最大值。

補充糾錯
上一個函式: SplHeap::insert()函式
下一個函式: SplHeap::current()函式
熱門PHP函式
分享連結