>本文介绍了PHP中的树数据结构,重点介绍了它们的层次性质和搜索和分类的效率。 它建立在先前涵盖堆栈和队列的文章上。
>关键概念:
搜索问题:
>本文重点介绍了基于价值数据检索的堆栈和队列的局限性。 搜索列表平均需要遍历清单的一半。 树木提供了更有效的解决方案。 基于树的“表”的核心操作是:创建,插入,删除和检索,镜像数据库CRUD操作。
树:卓越的解决方案:
>该图说明了一棵二进制树 - 每个节点最多有两个孩子的树。 这是一个递归结构。
二进制树实现:
>使用和>类显示了PHP中的基本二进制树实现。
具有价值,并引用了左右孩子。管理root节点。BinaryNode
BinaryTree
BinaryNode
节点插入:BinaryTree
使用伪代码描述了一种简单的插入算法。 它使用划分和争议的方法:如果小于当前节点的值,则将新节点插入左侧,如果较大,则在右边。 重复项被拒绝。 PHP代码展示了该算法的递归实现。 提到了节点删除,但推迟到将来的文章。
>树遍历(内阶):
>文章解释了处理左子树的序列遍历,然后是当前节点,然后是右子树。 修改后的BinaryNode
和BinaryTree
类使用递归dump()
方法演示遍历遍历。
结论:
>
FAQS部分
以上是PHP主| PHP开发人员的数据结构:树木的详细内容。更多信息请关注PHP中文网其他相关文章!