(1)树的根结点作为内子树构成的表的表名,放在表的最前面。
(2)每个结点的左子树和右子树用逗号隔开。若仅有在子树没有左子树,则逗号不能省略。
(3)在整个广义表表示输人的结尾加上一个特殊的符号(例如)表示输入结束。例如,对于如图5-26所示的二叉树,广义表表示为:A(B(D,E(G,)).C(,F))
解题思路:本题就是在一个二叉链表中查找指定的结点x的过程。可以利用二叉树的任意一种遍历方法进行查找。这里利用先序遍历方法,首先判断当前结点是否是要查找的结点,如果是,则查找成功,返回结点的地址;如果不是,则分别到它的左子树和右子树中进行查找。
二叉树采用二叉链表存储: (1)编写计算整个二叉树高度的算法(二叉树的高度也叫二叉树的深度)。 (2)编写计算二叉树最大宽度的算法(二叉树的最大宽度是指二叉树所有层中结点个数的最大值)。