本节总结了如何用链式数据结构表示二叉树。
二叉树
根节点 | x.p = NIL |
---|---|
左孩子 | x.left |
右孩子 | x.right |
属性T.root指向整棵树的根节点,T.root为NIL, 则整棵树为空。
左孩子右兄弟表示法
如果每个结点的孩子任意多时,可用child1,child2,child3… 来代替left 与 right,但如果孩子数无限制则会导致不知分配多少存储空间。所以采用left-child,right-sibling representation的表示法。
x.left-child指向x的最左边孩子的结点
x.right-sibling指向x右侧相邻的兄弟结点
对于一个已经是最右侧孩子的结点,其x.right-sibling为NIL。