如何建立二叉树
如何建立二叉树
1。建立二叉树
2。为了直观的输出树,那么可以选择广度遍历。查查书应该有。
3。
深度的话我这刚好有两个函数
法1:
template
int tree::tree_level(tree_node *root)//利用递归:
{
if(root==NULL)
return 0;
else
{
int l_level=tree_level(root->rchild);//记录左子树的层数
int r_level=tree_level(root->rchild);//记录右子树的层数
return l_level>r_level?l_level 1:r_level 1;//选择左右层数较大的一个 1返回
}
}
法2:
template
void tree::tree_level(tree_node *root,int level,int& deth)//
{//用level记录当前的层数
if(root!=NULL)
{
if(level>deth)
{
deth=level;//deth和当前层数level比较,取较大值
}
tree_level(root->lchild,level 1,deth);//level 1看其左子树
tree_level(root->rchild,level 1,deth);//level 1看其右子树
}。
答:这个问题我好象在 这个论坛上面 看到过 你自己找一找进入后有分类自己看 一定能找到你的答案的,如果解决了你的问题一定要给我加分哦! 谢谢!详情>>