数据结构中,在一棵有n个结点度为k的树中必有n(k-1)+1个空链域,这个结论是怎么得到的
1个回答

树的度:结点度的最大值

设度为0 ,度为1 ,度为2 ……度为k,度为k-1的结点数目分别为:n0,n1,n1,……,n(k-1),nk.

总的结点数目:n=n0+n1+n2+……+n(k-1)+ nk.①

总的分支数目:n-1=1*n1+2*n2+3*n3+……+(k-1)*n(k-1)+ k*nk②

等式左边n-1的由来:除了根节点外所有的其他每个结点都向上有一个分支指向它

等式右边的由来:某个结点所产生的分支数目=这个结点的度

空链域个数:k*n0+(k-1)*n1+(k-2)*n2+……+n(n-1)+0*nk③

①式乘以k减去②得到③ (k*①-②=③=n*(k-1)+1)

k*①-②得到:k*n-(n-1)=[k*n0+k*n1+……+ k*n(k-1)+ k*nk]-[n1+2*n2+3*n3+……+k*nk]

化简得到:k*n-(n-1)=k*n0+(k-1)*n1+(k-2)*n2+……+n(n-1)+0*nk=③=n*(k-1)+1)

下面是证明 n0=n2+1

①-②得到:

n0+n1+n2+……+n(k-1)+ nk-1=1*n1+2*n2+3*n3+……+(k-1)*n(k-1)+ k*nk

化简得:n0-1=+n2+2*n3+……+(k-2)*n(k-1)+( k-1)*nk

原理一样 你要掌握①式和②式

还有什么疑问再问我好了