PHP实现的堆是否是一个完整的实现?
当我阅读这篇文章http://en.wikipedia.org/wiki/Heap_%28data_structure%29时,我得到的想法是子节点有一个特定的父节点,并且父节点有特定的子节点。
然而当我查看PHP文档中的例子http://au.php.net/manual/en/class.splheap.php时,似乎所有的子节点都共享同一个“级别”,但具体的父/子信息并不重要。
例如,在PHP示例中排名第10的三个节点中,哪个节点是每个节点的父节点?
在我的应用程序中,当用户选择“节点156”时,我需要知道它的子节点是谁,以便我可以访问它们每一个(我可以将它们的身份设置为“节点1561”,“节点1562”等,以便关系明显)。
PHP堆实现是否不完整?我应该忘记Spl类,走自己的路吗?或者我对堆的操作方式有所遗漏?或许我应该看一下特定的堆变体?
非常感谢!