| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1273 人关注过本帖
标题:二叉树输入结点值时我不知道怎样结束递归
只看楼主 加入收藏
ck416787107
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-10-28
收藏
 问题点数:0 回复次数:3 
二叉树输入结点值时我不知道怎样结束递归
就是在输入结点值时我不知道怎样结束递归
#include<stdio.h>
#include<malloc.h>
typedef struct Binnode{//二叉树结点结构体
    char data;
    struct Binnode *lchild;
    struct Binnode *rchild;
  }*Bintree;
//typedef Binnode *Bintree ;
Bintree Creat_Bintree(Bintree *root)
{
    char ch;
    if((ch=getchar())==' ')
    {
        *root=NULL;

    }
    else
    {
        *root=(Binnode*)malloc(sizeof(Binnode));
        (*root)->data=ch;
        Creat_Bintree(&(*root)->lchild);
        Creat_Bintree(&(*root)->rchild);
    }
    return *root;
}
void Preorder1(Bintree t)
{
    if(t!=NULL)
    {
        printf("%c",t->data);
        Preorder1(t->lchild);
        Preorder1(t->rchild);
    }
}
void main()
{
    Bintree TREE;
    printf("建立二叉树:");
    Creat_Bintree(&TREE);
    Preorder1(TREE);
}
搜索更多相关主题的帖子: 二叉树 c语言 
2008-10-28 22:31
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
一般来说,二叉树我们用广义表形式输入……
2008-10-28 22:47
ck416787107
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-10-28
收藏
得分:0 
他与普通的输入有什么区别,如果我普通输入需要加什么才能完成输入和输出二叉树的功能,帮忙解释一下
2008-10-29 14:37
geninsf009
Rank: 3Rank: 3
等 级:论坛游民
威 望:8
帖 子:613
专家分:95
注 册:2008-8-16
收藏
得分:0 
斑竹说得对,普通情况下都是通过广义表形式来实现二叉树的输入的,一般情况下,可以在描述字符串中加入一个结束符号例如'#'号,例如输入的广义表描述字符串的二叉树:
A(,B(C(E,F),D))#,通过这个可以建立一棵二叉树,主要的方法可以扫描这个字符串,通过堆栈来实现.
2008-10-29 17:40
快速回复:二叉树输入结点值时我不知道怎样结束递归
数据加载中...
 
   



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

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