二叉树的建立及凹入表打印Word文档下载推荐.docx

上传人:b****1 文档编号:15212681 上传时间:2022-10-28 格式:DOCX 页数:8 大小:168.58KB
下载 相关 举报
二叉树的建立及凹入表打印Word文档下载推荐.docx_第1页
第1页 / 共8页
二叉树的建立及凹入表打印Word文档下载推荐.docx_第2页
第2页 / 共8页
二叉树的建立及凹入表打印Word文档下载推荐.docx_第3页
第3页 / 共8页
二叉树的建立及凹入表打印Word文档下载推荐.docx_第4页
第4页 / 共8页
二叉树的建立及凹入表打印Word文档下载推荐.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

二叉树的建立及凹入表打印Word文档下载推荐.docx

《二叉树的建立及凹入表打印Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《二叉树的建立及凹入表打印Word文档下载推荐.docx(8页珍藏版)》请在冰豆网上搜索。

二叉树的建立及凹入表打印Word文档下载推荐.docx

完成日期:

2013-11-6

问题描述:

1)用先序递归过程建立二叉树(存储结构:

二叉链表)

输入数据按先序遍历所得序列输入,当某结点左子树或右子树为空时,输入‘*’号,如输入abc**d**e**得到的二叉树为:

e

ad

b

c

(选做:

由二叉树的先序序列和中序序列建立一棵二叉树。

2)编写递归算法,计算二叉树中叶子结点的数目。

3)按凹入表方式输出该二叉树。

算法思想:

定义二叉树的数据结构类型

typedefstructBiTNode//

{

chardata;

structBiTNode*lchild,*rchild;

//左右子树

}BiTNode,*BiTree;

1.先序递归创建二叉树

BiTreeCreateBiTree(BiTree&

T)

T=(BiTree)malloc(sizeof(BiTNode));

T->

data='

\0'

;

charch;

scanf("

%c"

&

ch);

if(ch!

='

*'

{

data=ch;

lchild=CreateBiTree(T->

lchild);

rchild=CreateBiTree(T->

rchild);

}

elseif(ch=='

returnNULL;

if((T->

lchild==NULL&

&

T->

rchild==NULL)||(T->

rchild->

data!

)||(T->

lchild->

))

returnT;

}

2.计算叶子节点

intLEAF(BiTree&

T)

{

if(T->

rchild==NULL)

return1;

elseif(T->

returnLEAF(T->

rchild==NULL)

else

return(LEAF(T->

lchild)+LEAF(T->

rchild));

3.凹入表打印二叉树

voidPrint(BiTree&

T,intt)

inti;

if(T)

{

Print(T->

rchild,t+5);

for(i=0;

i<

t;

i++)

printf("

"

);

%5c\n"

T->

data);

lchild,t+5);

4.主函数

intmain()

BiTreeT;

*******************************************\n"

****************欢迎打印二叉树*************\n"

请按先序遍历所得数据输入(当某节点是叶子节点时用'

表示):

\n"

T=CreateBiTree(T);

叶子节点的个数是:

%d\n"

LEAF(T));

打印该二叉树结构后的结果为:

Print(T,5);

system("

pause"

设计描述:

源程序:

#include<

stdio.h>

stdlib.h>

malloc.h>

#defineMaxsize100

#defineOVERFLOW-1

#defineERROR0

intpi=0;

typedefstructBiTNode//定义二叉树的数据结构类型

BiTreeCreateBiTree(BiTree&

T)//先序递归创建二叉树

T)//计算叶子节点

T,intt)

 

测试结果:

用户使用说明:

请按先序遍历所得数据输入(当某节点是叶子时用‘*’表示):

(输入先序遍历序列)

叶子节点的个数是:

(显示叶子节点的个数)

打印该二叉树结构后的结果为:

(显示二叉树结构直观凹入图)

心得体会:

通过对二叉树的学习与同学之间的交流,我对二叉树及其递归建立和遍历有了更加深入的了解,感觉学到了很多东西,感受到了学习的乐趣。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1