数据结构作业13复习

1-1
对于一个有N个结点、K条边的森林,不能确定它共有几棵树。(2分)
F

N-K棵树

在这里插入图片描述

解析:

解法一:树有一个很重要的性质:在n个结点的树中有n-1条边,“那么对于每棵树,其结点数比边数多1”。题中的森林中的结点数比边数多10(即25-15=10),显然共有10棵树。

解法二:若考生再仔细分析发现,此题也是考察图的某些方面的性质:生成树和生成森林。此时对于图的生成树有一个重要的性质:若图中顶点数为n,则它的生成树含有n-1条边。对比解法一中树的性质,不难发现两种解法都利用到了“树中结点数比边数多1”的性质,接下来的分析如解法一。

在这里插入图片描述
在这里插入图片描述

关于第三个选项,其实,主要的问题还是在于审题。
在这里插入图片描述
在这里插入图片描述

根据森林转换为二叉树的法则,二叉树的根结点通常是第一棵树的结点,二叉树的左子树是由第一棵树删去根后所得所有子树构成的,二叉树的右子树是由其它树(第二,第三棵树)构成的,故左子树结点个数是M1-1,右子树上的结点个数是M2+M3。

在这里插入图片描述
树的个数=总结点树-总边数
N=n0+n1+n2-(n1+2n2)
=n0-n2
=N-M

在一个用数组表示的完全二叉树中,如果根结点下标为1,那么下标为17和19这两个结点的最近公共祖先结点在哪里(数组下标)?(注:两个结点的“公共祖先结点”是指同时都是这两个结点祖先的结点) (3分)4

处于 i 处结点的父节点一定为处于 [i / 2] (小于 i / 2的最大整数) 的结点 , 因此17, 19不断除以二,直至相等。
①17 / 2 = 8, 19 / 2 = 8;
②8 / 2 = 4, 8 / 2 = 4。

4-1
已知一个森林的先序遍历序列为BEFKLCGDHIJ,中序遍历序列为EKLFBGCHIJD,该森林的叶子数为 7

森林的先序序列对应二叉链表的先序遍历、中序序列对应二叉链表的中序遍历,由先序遍历和中序遍历确定出二叉链表,再根据此二叉链表按照孩子兄弟表示法的含义可得此二叉链表对应的森林

4-2
已知一颗树的先根序遍历序列为ABHCEFGD,后根序遍历序列为HBEGFCDA,这颗树的深度为 4

树的先跟序列对应二叉链表的先序遍历、后根序列对应二叉链表的中序序列,由先序遍历和中序遍历确定出二叉链表,再根据此二叉链表按照孩子兄弟表示法的含义可得此二叉链表对应的树

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值