【发布时间】:2012-08-05 10:22:01
【问题描述】:
堆的 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 Heap 实现是否不完整?我应该忘记Spl课程并走自己的路吗?或者我错过了关于堆应该如何操作的一些东西?或者我应该查看一个特定的堆变体?
谢谢大家!
【问题讨论】:
-
我在 Google 上找到了this open source project。实际上这不是您要查找的内容,但您可以尝试使用此脚本进行测试以自行获取结果。