この質問は、私が以前に尋ねたこの質問に関連しています。
基本的には、いくつかの境界的なケースでデキューがどのように機能するかについてです。例えば:
$queue = new SplPriorityQueue();
$queue->insert('foo', 0);
$queue->insert('bar', 0);
$queue->insert('baz', '0');
私はまったく同じ順序を期待していましたfoo
bar
baz
:
while ($queue->valid()) {
var_dump($queue->current());
$queue->next();
}
であることがわかりfoo
baz
bar
ます。なぜ前にbaz
行くのか説明できますか? bar