PHP SplPriorityQueue compare()函数
SplPriorityQueue::compare()函数是PHP中的一个内置函数,用于比较优先级队列元素以在堆数据结构中按特定顺序放置。
句法:
int SplPriorityQueue::compare(
mixed $priority1 , mixed $priority2 )
参数:该函数接受上面提到的两个参数,如下所述:
- priority1:此参数保存正在比较的第一个节点的优先级。
- priority2:此参数保存正在比较的第二个节点的优先级。
返回值:该函数返回比较函数的结果。如果priority1大于priority2则返回+ve整数,如果两者相等则返回0,否则返回-ve整数。
例子:
PHP
insert("Geeks",2);
$obj->insert("GFG",1);
$obj->insert("G4G",3);
$obj->insert('G',4);
// Display the priority queue elements
var_dump($obj);
?>
输出
object(priorityQueue)#1 (3) {
["flags":"SplPriorityQueue":private]=>
int(1)
["isCorrupted":"SplPriorityQueue":private]=>
bool(false)
["heap":"SplPriorityQueue":private]=>
array(4) {
[0]=>
array(2) {
["data"]=>
string(1) "G"
["priority"]=>
int(4)
}
[1]=>
array(2) {
["data"]=>
string(3) "G4G"
["priority"]=>
int(3)
}
[2]=>
array(2) {
["data"]=>
string(5) "Geeks"
["priority"]=>
int(2)
}
[3]=>
array(2) {
["data"]=>
string(3) "GFG"
["priority"]=>
int(1)
}
}
}
参考: https://www. PHP.net/manual/en/splpriorityqueue.compare。 PHP