5-6.设F是一个森林,B是由F转换得到的二叉树,F中有n个非终端结点,B中右针域为空的结点有?
A.n-1
B.n
C.n+1
D.n+2
已知非终端结点数n;已知所有的左指针数是所有的非终端结点数。
- 因为左指针指向第一个孩子结点,每个非终端结点指向第一个孩子结点, 其他孩子都是用右指针连接。即每一个二叉树中的左指针对应于一个非终端节点。
∴左指针不为空的数为:n
;
∴左指针为空的数为:m(结点数)-n
;①
根据性质
已知一棵树共使用指针数为:m-1
;
∴所有的指针为空的数为:m+1
;②
根据右指针为空的结点数为:②-①(所有的指针为空的数-左指针为空的数)(m+1)-(m-n)
可以得求右指针为空的结点数为:n+1
对应二叉树中无右孩子结点个数=分支结点数(非终端结点数) + 1
5-12. 已知一棵有 2011个结点的树,其叶结点个数为116,该树对应的二叉树中无右孩子的结点个数是 (
)。【2011年全国试题6(2分)】
A.115
B.116
C.1895
D.1896
树转换为二叉树时,树的每个分支结点的所有子结点中的最右子结点无右孩子(其他二叉树中孩子结点都有有结点),树的根结点转换后也没有右孩子。
(每一个非终端节点对应的孩子结点的最右结点没有右孩子(右指针为空))
因此,对应二叉树中无右孩子结点个数=分支结点数 (非终端结点数)+ 1