首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

求二叉树的高度有关问题

2012-05-14 
求二叉树的高度问题int PostTreeDepth(BiTree root)//后序遍历求二叉树的高度递归算法{int hl,hr,maxif(r

求二叉树的高度问题
int PostTreeDepth(BiTree root)
//后序遍历求二叉树的高度递归算法
{
int hl,hr,max;
if(root!=NULL)
{
  hl=PostTreeDepth(root->LChild);//左子树的深度
  hr=PostTreeDepth(root->RChild);//右子树的深度
  max=hl>hr?hl:hr;//得到左右子树的较大者
  return (max+1);//返回树的深度
}
else return 0;//如果是空树则返回0
}

求二叉树的高度递归算法时过程怎么个实现,,,说说具体的每一步应该执行什么样的语句,越详细越好,,,,谢谢,,


[解决办法]
你的代码不就是正确的思路吗?
主要的想法就是:如果一个指针为空,那么这个树的高度为0.如果这课树不为空,那么获得它的左子树的高度和右子树的高度,然后比较,取大者,并在这个值上加上自己节点的增量(1)。就这样递归实现的嘛

热点排行