C语言实现计算树的深度的方法
本文实例讲述了C语言实现计算树的深度的方法。是算法设计中常用的技巧。分享给大家供大家参考。具体方法如下:
/* *Copyright(c)2011alexingcool.AllRightsReserved. */ #include<iostream> usingnamespacestd; structNode{ Node(inti=0,Node*l=NULL,Node*r=NULL):data(i),left(l),right(r){} intdata; Node*left; Node*right; }; Node*Construct(){ Node*node4=newNode(7,NULL,newNode(3)); Node*node3=newNode(4); Node*node2=newNode(12); Node*node1=newNode(5,node3,node4); Node*root=newNode(10,node1,node2); returnroot; } intGetTreeHeight(Node*root){ if(root==NULL) return0; returnmax(GetTreeHeight(root->left)+1,GetTreeHeight(root->right)+1); } voidmain(){ Node*root=Construct(); intheight=GetTreeHeight(root); cout<<"treeheightis:"<<height<<endl; }
希望本文所述实例对大家C程序算法设计的学习有所帮助。