导航:首页 > 数据分析 > 如何输入二叉树数据

如何输入二叉树数据

发布时间:2023-08-15 16:11:04

㈠ 二叉树程序运行时怎么输入

那就要看你的程序是如何的了。我是初学者,我有一个程序如下:
#include
#include
struct
tree
{
char
d;
struct
tree
*lc,*rc;
};
struct
tree*
create()
{struct
tree*p;
char
c;
cin>>c;
if(c=='#')
return
0;
p=new
struct
tree;
p->d=c;
p->lc=create();
p->rc=create();
return
p;
}
void
first(struct
tree*q)
{
if(!q)
return;
cout<
d<<",";
first(q->lc);
first(q->rc);
}
void
last(struct
tree*q)
{
if(!q)
return;
last(q->lc);
last(q->rc);
cout<
d<<",";
}
void
mid(struct
tree*q)
{
if(!q)
return;
mid(q->lc);
cout<
d<<",";
mid(q->rc);
}
void
main()
{
struct
tree*head;
cout<<"请输入二叉树:"<
评论
0
0
0
加载更多

㈡ 怎么输入一个二叉树,树中每个节点存放了一个整数值

先定义二叉树的存储结构,不同的定义方法相应有不同的存储结构的建立算法。
如二叉树采用二叉链表存储结构,如下:
#define OK 1
#define OVERFLOW -1

typedef int TElemType;
typedef int Status;

typedef struct BiTNode {
TElemType data;
struct BiTNode *lchild ;//左孩子指针
struct BiTNode *rchild; // 右孩子指针
} BiTNode;//二叉树结点
typedef BiTNode *BiTree; //二叉树

int ch;

按给定的带 0 标记的先序序列定义一棵二叉树,如下:
Status CreateBiTree(BiTree &T)
{//按先序序列建儿叉树
scanf("%d",&ch);
if (ch= =0 ) T = NULL;
else {
if (!(T = (BiTNode *)malloc(sizeof(BiTNode))))
exit(OVERFLOW);
T->data = ch; // 生成根结点
CreateBiTree(T->lchild); // 构造左子树
CreateBiTree(T->rchild); // 构造右子树
}
return OK;
} // CreateBiTree
例如,输入先序序列如下:1 2 0 3 0 0 4 0 0
建立的二叉树如下:
1
/ \
2 4
\
3

阅读全文

与如何输入二叉树数据相关的资料

热点内容
如何不用APP连接斐讯手环 浏览:698
王菲版本的无地自容 浏览:489
编程如何调用tkinter 浏览:512
电气工程的编程主要是什么 浏览:112
word重复标题行单元格边框 浏览:977
易语言官方网站 浏览:622
如何比对行的数据库 浏览:868
c获取文件绝对路径 浏览:739
qq空间头像旁边有个心 浏览:581
rom文件zip格式 浏览:41
linux读取目录下的文件夹 浏览:4
有没有裸体app软件 浏览:249
哪个app可以看好友距离 浏览:75
dbf文件找不到 浏览:174
如何搞word文件 浏览:393
表格多建立数据库 浏览:430
win10文件图标修复工具 浏览:190
苹果手机携程旅游怎么领流量 浏览:721
bestsonny系统升级 浏览:122
限制特定文件类型的是哪个 浏览:874

友情链接