以二叉链表作为二叉树的存储结构,编写以下算法:
(1)统计二叉树的叶结点个数。
(2)设计二叉树的双序遍历算法(双序遍历是指对于二叉树的每一个结点来说,先访问这个结点,再按双序遍历它的左子树,然后再一次访问这个结点,接下来按双序遍历它的右子树)。
(3)计算二叉树最大的宽度(二叉树的最大宽度是指二叉树所有层中结点个数的最大值)。
(4)用按层次顺序遍历二叉树的方法,统计树中具有度为1的结点数目。
(5)求任意二叉树中第一条最长的路径长度,并输出此路径上各结点的值。
(6)输出二叉树中从每个叶子结点到根结点的路径。
证明下列关系:
(1)设T是具有n个内结点的扩充二叉树,I是它的内路径长度,E是它的外路径长度。试利用归纳法证明E=1+2n,n≥1.
(2)利用(1)的结果,试说明:成功搜索的平均搜索长度Sn与不成功搜索的平均搜索长度U.之间的关系可用公式Sn=(1+1/n)Un-1,n≥1表示。
A、R[(i-1)/2]
B、R[i/2]
C、R[n/2-1]
D、R[n/2]