मैं एक पेड़ की ऊंचाई की गणना करने की कोशिश कर रहा हूँ। मैं नीचे लिखे कोड के साथ doint कर रहा हूँ।
#include<iostream.h>
struct tree
{
int data;
struct tree * left;
struct tree * right;
};
typedef struct tree tree;
class Tree
{
private:
int n;
int data;
int l,r;
public:
tree * Root;
Tree(int x)
{
n=x;
l=0;
r=0;
Root=NULL;
}
void create();
int height(tree * Height);
};
void Tree::create()
{
//Creting the tree structure
}
int Tree::height(tree * Height)
{
if(Height->left==NULL && Height->right==NULL)
{return 0;
}
else
{
l=height(Height->left);
r=height(Height->right);
if (l>r)
{l=l+1;
return l;
}
else
{
r=r+1;
return r;
}
}
}
int main()
{
Tree A(10);//Initializing 10 node Tree object
A.create();//Creating a 10 node tree
cout<<The height of tree<<A.height(A.Root);*/
}
यह मेरे corret परिणाम देता है। लेकिन में कुछ पदों (googled पेज) यह एक क्रंमोत्तर चंक्रमण करो और ऊंचाई की गणना करने के लिए इस ऊंचाई विधि का उपयोग करने का सुझाव दिया गया था। कोई विशेष कारण?













