- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构一实验报告
指导教师 x X实验时间:指23年
1月L日学院计算机学院专业 信息安全
班级 XXXXXX 学号 XXXXX 姓名 X X 实验室S331
实验题目:二叉树操作实验规定:
采用二叉树链表作为存储结构,完毕二叉树的建立,先序、中序和后序以及按层次 遍历的操作,求所有叶子及结点总数的操作。
示例程序:
i n clud e s t d i o. h〃i n clud e 〃string. h〃
d e fine Max 2 0〃结点的最大个数ty p e def str u ct n o d e {
cha r data;str u ct node *lchild, c hild;
} BinTNode;〃自定义二叉树的结点类型type d e f B i nTNode *BinTree; 〃定义二叉树的指针
i nt NodeNum, leaf;〃NodeNum为结点数,lea f 为叶子数〃===== = =基于先序遍历算法仓ij建二叉树二=== = =====
/ /二二=二=规定输入先序序列,其中加入虚结点以示空指针的位置=== = ===Bi n T ree Cr e a t B i nTree (voi d )
if(p-l c hild! =NULL){rear=( r ear+1) %No d eNum;
cq[rear]=p-l c hild; / /左子树入队° }
^if(p— r c h i 1 d! =NULL){。 r ear=(r ear +1)%N o deNum;
oc q[ r e a r]=p—r c hil d ;/ / 右子树入队
))
}I/==========主 函数================
vo i d main()(
BinTree root;in t i , d epth;
printf ( \n);p rintf(nCr eat B i n_Tre e ; I n put p r e order:);〃输入完全二叉树的先序序列,
〃用#代表虚结点,如ABD###CE##F##
r o ot=C r e atBinT r ee ();〃创建二叉树,返回根结点do {〃从菜单中选择遍历方式,输入序号。
ooprin t f(M\t * ***** **** s el e ct * **** * ******\n );
p r intf(n \ t 1: P r eord e r Tra v ersal \ n n);o p ri n t f(n\t2: lorder Tra v e rs a 1 \ nH);
。p rin t f(H \ t 3 : Pos t or d e r tra ver s a 1 \n”);^printf(n\t4: P o stTre e De p th, Node number, Leaf n umber\nn);
oprintf C\t5:Leve 1 Depth\ n ”); / /按层次遍历之前,先选择4 ,求出该树的结点数。 oprintf(n\tO: Exi t \nH);°6prin t f (、******************************* \ n )?
scanfC%dn,i) ;//输入菜单序号(0—5)
s wi t ch (i) {
。。c ase 1: p rintf(nP r int Bin_tree P r e o r der: );r eorder(root) ;/ /先序遍历
3break;
case 2: printf (nPri n t Bi n _ T r e e Ino r de r : n);Ino r de r ( r oot);〃中序遍历
^break;。 ca s e 3 : p rint f ( n P ri nt B i n_T ree Pos tor der:);
。 Posto r d e r (root); 〃后序遍历 ?bre a k;
c a se 4: dep t h=TreeDepth(r o ot);//求树的深度及叶子数。 printf( n Bin T ree Dept h = %d BinT ree No d e numb e r=% d ”,d epth,NodeN u m);
p rintf(n Bi n T r ee Leaf num b er=%cT,lea f );o break;
c as e 5: p r i n tf(nL e v e P rint Bi n _T r ee: );
Ie v elorder(root);/ /按层次遍历
。 break;a d efau 1 t : exit(l );
p r
您可能关注的文档
最近下载
- 物联网安全与隐私保护:物联网系统安全PPT教学课件.pptx
- 慢性肾脏病5期贫血.pptx VIP
- 脑电图试卷.(DOC).doc VIP
- FLOW-3D软件Cast铸造模拟介绍.ppt VIP
- 三上《朝读经典》.pdf VIP
- NB∕T 31011-2019 陆上风电场工程设计概算编制规定及费用标准.pdf
- 1.1 常见的植物(教学课件)科学青岛版二年级上册2025.ppt
- 全身不同部位推拿按摩.pptx VIP
- 2021版ESD静电防护工程师及内审员培训课件(ANSI-ESD-S20.20-2021).pdf VIP
- 2025四川省水电投资经营集团有限公司所属电力公司员工招聘6人笔试备考题库及答案解析.docx VIP
文档评论(0)