数据结构:笔记-树

1、在一棵二叉树中有30个叶子结点,仅有一个孩子的结点有20个,则该二叉树共有() 个结点
正确答案: A 你的答案: D (错误)
79
76
56
81
解析:n0为叶子结点,n1为度为1的结点,n2为度为2的结点,n为总结点;则:n=n0+n1+n2.
已知n0=30,n1=20.二叉树中度为2的结点数目=叶子结点数目-1,所以n2=n0-1=29.
n=30+20+29=79.
所以总节点数为79

2、树的数组表示法(单链或父链表示法)中兄弟结点的编号不一定是连续的()
正确答案: A 你的答案: A (正确)

3、给定n个带权结点,其Huffman树的结构是唯一的。
正确答案: B 你的答案: A (错误)


解析:画哈夫曼树过程中,当出现节点权值相等时,就会出现不同的哈弗曼树,试一下就知道了

4、任何一棵二叉树都可以不用栈实现前序线索树的前序遍历()
正确答案: A 你的答案: B (错误)


解析:线索二叉对,直接使用指针来遍历即可,可以不用栈来辅助。

5、在下列关于平衡二叉树的叙述中,不正确的是( )。

正确答案: A 你的答案: A (正确)
二叉树中所有结点的左右子树的深度之差小于等于1
二叉树中所有左右子树的深度之差的绝对值小于等于1
二叉树中每个节点的平衡因子={-1 ,0 ,1}
二叉树中度为0的叶节点比度数为2的结点多
解析:是绝对值。

6、假设某棵二叉查找树的所有键均为1到10的整数,现在我们要查找5。下面____不可能是键的检查序列。
正确答案: B 你的答案: F (错误)
10,9,8,7,6,5
2,8,6,3,7,4,5
1,2,9,3,8,7,4,6,5
2,3,10,4,8,5
4,9,8,7,5
以上均正确
解析;二叉排序树或者是一棵空树,或者是具有下列性质的二叉树:
(1)若左子树不空,则左子树上所有结点的值均小于它的根节点点的值;
(2)若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值;
(3)左、右子树也分别为二叉排序树;
(4)没有键值相等的节点。
先看A选项,第一个节点值为10,比要查找的5大,所以要接下来要比较10的左子树,左子树上的值一定比10小,而选项A中的第二个查找值是9,合理。此时,9仍然比待查找的数字5大,要继续查找9的左子树,左子树比9小,而查找的下一位数字为8,合理。依次类推。。。。

7、二叉树的三种遍历算法区别仅在于对树根、左右子树访问先后顺序的不同,这种说法()
正确答案: B 你的答案: A (错误)
正确
错误

8、以下哪些算法是可以用来求最小生成树()

正确答案: A D 你的答案: A D (正确)
kruskal算法
dijkstra算法
floyd算法
prim算法

9、在AVL树中,哪个调整操作可以使根节点的平衡因子由1变为2( )
正确答案: A C 你的答案: A B (错误)
LL
RR
LR
RL
解析:有四种种情况可能导致二叉查找树不平衡,分别为:

(1)LL:插入一个新节点到根节点的左子树(Left)的左子树(Left),导致根节点的平衡因子由1变为2

(2)RR:插入一个新节点到根节点的右子树(Right)的右子树(Right),导致根节点的平衡因子由-1变为-2

(3)LR:插入一个新节点到根节点的左子树(Left)的右子树(Right),导致根节点的平衡因子由1变为2

(4)RL:插入一个新节点到根节点的右子树(Right)的左子树(Left),导致根节点的平衡因子由-1变为-2

针对四种种情况可能导致的不平衡,可以通过旋转使之变平衡。有两种基本的旋转:

(1)左旋转:将根节点旋转到(根节点的)右孩子的左孩子位置

(2)右旋转:将根节点旋转到(根节点的)左孩子的右孩子位置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

椒椒。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值