树的遍历时怎样计算每个节点所在的层数

feng040230528 2009-10-21 05:18:39
树的遍历时怎样计算每个节点所在的层数?不是正规的二叉树,比如一个BOM表,如果用层序遍历怎样得到每个节点的所在层? 还有怎么将这棵树按层次画出来?最好有代码...
...全文
835 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
feng040230528 2009-10-22
  • 打赏
  • 举报
回复
我的意思是怎样层序遍历的时候同时记录节点所在的层数
Hxiaoliang 2009-10-22
  • 打赏
  • 举报
回复
好像有公式的
jiabin_007 2009-10-22
  • 打赏
  • 举报
回复
我的方法比较笨:
你想判断一个a在第几层,就在while循环中看他的父节点是否为空,如果不为空,就继续找他父节点的父节点。加一个循环计数,当while循环终止时,循环计数就等于a的层数。
dirdirdir3 2009-10-22
  • 打赏
  • 举报
回复
节点的数据本身带有,或者在递归遍历时传递下去.........
fandh 2009-10-22
  • 打赏
  • 举报
回复
如果使用递归调用,直接作为参数传入与传出!
ToperRay 2009-10-22
  • 打赏
  • 举报
回复
int nCen = 0;
while(tree = getparent(tree))
{
nCen++;
}
类似这样吧。

ziplj 2009-10-21
  • 打赏
  • 举报
回复
利用数组变量存下来啊 这个有什么难的
画层次图的时候更具 1层 2层 3层画呗

19,469

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧