标题:求助:统计二叉树高度的代码,该如何理解?
只看楼主
lrongh
Rank: 2
等 级:论坛游民
帖 子:39
专家分:24
注 册:2009-10-6
结帖率:100%
 问题点数:0 回复次数:1 
求助:统计二叉树高度的代码,该如何理解?
int treehigh(BitTree T) {   
  if(!T) return 0;
  else{
    int lh,rh,h;
    lh=treehigh(T->lchild); //统计左孩子个数
    rh=treehigh(T->rchild); //统计右孩子个数
    h=(lh>rh ? lh:rh)+1;    //谁大取谁再加根节点
  return(h);
  }

红色代码该如何理解?是不是递归函数如果定义为整型的话,每递归一次其值加1?还有,lh,rh都是函数内部变量,并没有通过参数传递,他们的值怎么会改变呢?困惑中……,恳请前辈指教!
搜索更多相关主题的帖子: 高度 二叉树 统计 代码 
2009-10-06 22:07
lrongh
Rank: 2
等 级:论坛游民
帖 子:39
专家分:24
注 册:2009-10-6
得分:0 
我自己想明白了
2009-10-07 12:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-287723-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 2.237277 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved