我有一个数组$heap = array(9, 9, 9, 8, 9, 9, 8, 9, 9, 9, 9, 9, 8, 8, 9, 7, 9, 8, 8, 9, 9,);
,我想像二叉树一样输出它,当我们可以通过这个公式知道两个子节点时,$heap[$key*2+1]
第二个$heap[$key*2+2]
. 我尝试使用 foreach 运行,但收到关于未定义偏移量 21 的错误。这是 foreach:
foreach ($heap as $key => $value) {
echo $value;
if ($key != count($heap)) {
echo $heap[$key*2+1];
echo $heap[$key*2+2];
}
}
我做错了什么以及如何解决这个问题?