题目内容
(请给出正确答案)
[单选题]
用顺序存储的方法将完全二叉树中的所有结点逐层存放在数组A~A【n】中,结点A【i】若有左子树,则左子树的根结点是()
A.[2i-1]
B.[2i+1]
C.[i/2]
D.[2i]
答案
D、[2i]
如果结果不匹配,请 联系老师 获取答案
A.[2i-1]
B.[2i+1]
C.[i/2]
D.[2i]
D、[2i]
以二叉链表作为二叉树的存储结构,编写以下算法:
(1)统计二叉树的叶结点个数。
(2)设计二叉树的双序遍历算法(双序遍历是指对于二叉树的每一个结点来说,先访问这个结点,再按双序遍历它的左子树,然后再一次访问这个结点,接下来按双序遍历它的右子树)。
(3)计算二叉树最大的宽度(二叉树的最大宽度是指二叉树所有层中结点个数的最大值)。
(4)用按层次顺序遍历二叉树的方法,统计树中具有度为1的结点数目。
(5)求任意二叉树中第一条最长的路径长度,并输出此路径上各结点的值。
(6)输出二叉树中从每个叶子结点到根结点的路径。
A.若二叉树使用顺序方式存储,则必须先将该二叉树补全为满二叉树。
B.若二叉树使用顺序方式存储,结点所在的下标对应着其在二叉树中的编号。
C.以顺序方式存储的二叉树可能会浪费大量空间。
D.若知道了二叉链表中根结点的指针,则整棵二叉树就唯一确定了。
下图给出了一个二叉树的顺序存储结构,其中空白表示结点不存在。请回答下列问题: (1)画出该二叉树。(2)给出该二叉树的中序序列和后序序列。
【北京理工大学2007三、3(6分)】
A.6
B.10
C.12
D.15
在二叉树中查找值为x的结点,试编写算法(用C语言)打印值为x的结点的所有祖先,假设值为x的结点不多于一个,最后试分析该算法的时间复杂度。