假设以双亲表示法作树的存储结构,写出双亲表示的类型说明,并编写求给定的树(结点数为n)的深度的算法。
假设以双亲表示法作树的存储结构,写出双亲表示的类型说明,并编写求给定的树(结点数为n)的深度的算法。
参考答案和解析
以双亲表示法作树的存储结构对每一结点找其双亲双亲的双亲直至(根)结点就可求出每一结点的层次取其结点的最大层次就是树的深度。核心语句段如下: int maxdepth=0; for(i=1;io){temp++; t=t.nodes[f].parent ;} //深度加1并取新的双亲 if(temp>maxdepth) maxdepth=temp; // 以双亲表示法作树的存储结构,对每一结点,找其双亲,双亲的双亲,直至(根)结点,就可求出每一结点的层次,取其结点的最大层次就是树的深度。核心语句段如下:intmaxdepth=0;for(i=1;io){temp++;t=t.nodes[f].parent;}//深度加1,并取新的双亲if(temp>maxdepth)maxdepth=temp;//
相关考题:
最优二叉树(哈夫曼树)、最优查找树均为平均查找路径长度Σwl最小的树,其中对于最优二叉树,n表示(42);对于最优查找树,n表示(43);构造这两种树均(44)。A.结点数B.叶结点数C.非叶结点数D.度为二的结点数
填空题假定一棵树的广义表表示为A(B(E),C(F(H,I,J),G),D),则该树的度为(),树的深度为(),终端结点的个数为(),单分支结点的个数为(),双分支结点的个数为(),三分支结点的个数为(),C结点的双亲结点为(),其孩子结点为()和()结点。
填空题一棵二叉树广义表表示为a(b(d(,h)),c(e,f(g,i(k)))),该树的结点数为()个,深度为()。