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
处于 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
树的先跟序列对应二叉链表的先序遍历、后根序列对应二叉链表的中序序列,由先序遍历和中序遍历确定出二叉链表,再根据此二叉链表按照孩子兄弟表示法的含义可得此二叉链表对应的树