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

如何输入二叉树数据

发布时间: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

阅读全文

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

热点内容
c程序设计课件 浏览:327
qq炫舞客户端怎么修复工具 浏览:537
结算需要cad源文件吗 浏览:446
编程在哪里签到 浏览:472
什么网站能看美女直播 浏览:148
linux生成excel格式的文件 浏览:230
win10开key文件 浏览:527
如何看待网络流行用语作文 浏览:296
xpsp1升级到sp3打补丁360 浏览:389
r语言怎么读取txt数据 浏览:114
压缩文件管用吗 浏览:410
华为官网app图标是哪个 浏览:603
中标麒麟共享主机的文件路径 浏览:309
滴答出行app怎么下载 浏览:990
苹果5怎么屏幕变色了 浏览:753
怎么把u盘文件改成可执行程序 浏览:915
ios902升级死机 浏览:180
ps什么文件格式能转成pdf 浏览:218
怎么设置qq群的名称 浏览:352
数据结构是属于哪个科目 浏览:399

友情链接