当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP SplHeap key()用法及代码示例


SplHeap::key()函数是PHP中的内置函数,用于获取当前节点索引。

通常,堆数据结构有两种类型:

  • Max-Heap:在Max-Heap中,根节点上存在的 key 必须在其所有子节点上存在的 key 中最大。对于该二叉树中的所有子树,相同的属性必须递归地为true。
  • Min-Heap:在Min-Heap中,根节点上存在的 key 必须在其所有子节点上存在的 key 中最小。对于该二叉树中的所有子树,相同的属性必须递归地为true。

用法:

mixed SplHeap::key()

参数:此函数不接受任何参数。

返回值:该函数返回当前节点的 key 。



以下示例程序旨在说明PHP中的SplHeap::key()函数:

范例1:

PHP


<?php 
  
// Create a new empty Mix Heap 
$heap = new SplMinHeap(); 
  
$heap->insert('System'); 
$heap->insert('GFG'); 
$heap->insert('ALGO'); 
$heap->insert('C');
$heap->insert('Geeks'); 
$heap->insert('GeeksforGeeks'); 
  
// Loop to display the current element of heap
for ($heap->top(); $heap->valid(); $heap->next()) {
    echo "Key => " . $heap->key() 
        . ", Value => " . $heap->current() . "\n";
}
  
?>

输出:

Key => 5, Value => ALGO
Key => 4, Value => C
Key => 3, Value => GFG
Key => 2, Value => Geeks
Key => 1, Value => GeeksforGeeks
Key => 0, Value => System

范例2:

PHP


<?php 
  
// Create a new empty Max Heap 
$heap = new SplMaxHeap(); 
  
$heap->insert('System'); 
$heap->insert('GFG'); 
$heap->insert('ALGO'); 
$heap->insert('C');
$heap->insert('Geeks'); 
$heap->insert('GeeksforGeeks'); 
  
// Loop to display the current element
// of heap with key
for ($heap->top(); $heap->valid(); $heap->next()) {
    echo "Key => " . $heap->key() 
        . ", Value => " . $heap->current() . "\n";
}
  
?>

输出:

Key => 5, Value => System
Key => 4, Value => GeeksforGeeks
Key => 3, Value => Geeks
Key => 2, Value => GFG
Key => 1, Value => C
Key => 0, Value => ALGO

参考:https://www.php.net/manual/en/splheap.key.php

相关用法


注:本文由纯净天空筛选整理自AshokJaiswal大神的英文原创作品 PHP SplHeap key() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。