解决这道题的思路是列出一个关于各个度的结点的等式,从而根据已知条件算出度为0的结点的个数,下面具体说一下解题方法:
设树T中的结点个数为n,度为0的结点的个数为n0,度为1的结点的个数为n1,度为2的结点的个数为n2,度为3的结点的个数为n3,则有:n = n0 + n1 + n2 + n3
根据题意,代入得:
30 = n0 + 4 + n2 + 3
设树T中的总边数为e,因为除了根节点的入度为0,其余各节点的入度都为1,则有:
e = n - 1 = n0 + n1 + n2 + n3 - 1
根据题意,代入得:
e = 30 - 1 = n0 + 4 + n2 + 3 - 1
e = 29 = n0 + 4 + n2 + 3 - 1
又因为,n0的出度为0,n1的出度为1,n2的出度为2,n3的出度为3,n4的出度为4,所以:
e = n0 * 0 + n1 * 1 + n2 * 2 + n3 * 3
根据题意,代入得:
e = n0 * 0 + 4 * 1 + n2 * 2 + 3 * 3
综上所述:
e = n0 * 0 + n1 * 1 + n2 * 2 + n3 * 3 = n0 + n1 + n2 + n3 - 1
根据题意,代入得:
e = n0 * 0 + 4 * 1 + n2 * 2 + 3 * 3 = n0 + 4 + n2 + 3 - 1
29 = 0 + 4 + n2 * 2 + 9 = n0 + 4 + n2 + 3 - 1
29 = n2 * 2 + 13 = n0 + n2 + 7 - 1
根据上述,求得:
n2 = 8
29 = n0 + n2 + 7 - 1
29 = n0 + 8 + 7 - 1
n0 = 15
因此该树T有15个叶子结点
>>>立即刷题