网站大量收购闲置独家精品文档,联系QQ:2885784924

实验树和叉树.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验树和叉树

实验六 树和二叉树 实验报告(11.12) 姓名 班级 学号 实验目的 熟练掌握二叉树在二叉链表存储结构中常用遍历方法:先序递归遍历、中序递归遍历和非递归遍历、后序递归遍历。了解二叉树的按层遍历、线序非递归遍历及后序递归遍历。用树解决实际问题,如哈弗曼编码等。加深对“数据结构+算法=程序”的理解和认识,提高编写较复杂程序的能力。 实验内容 第一题: 源代码: #includestdio.h #includestdlib.h int m,n,k; typedef struct node { int data; struct node *lchild,*rchild; }Bnode; Bnode *creat() { int i,x,j; Bnode *q,*s[20]; Bnode *t=NULL;printf(\n i,x=);scanf(%d%d,i,x); while((i!=0)(x!=0)) { q=(struct node *)malloc(sizeof(struct node)); q-data=x;q-lchild=NULL;q-rchild=NULL; s[i]=q; if(i==1) t=q; else{ j=i/2; if((i%2)==0) s[j]-lchild=q; else s[j]-rchild=q; }printf(\n i,x=);scanf(%d%d,i,x); }return t; } void middleorder(Bnode *p) { if(p!=NULL) { middleorder(p-lchild); printf(%6d,p-data); middleorder(p-rchild); } } void fstorder(Bnode *p) { if(p!=NULL) { printf(%6d,p-data); fstorder(p-lchild); fstorder(p-rchild); } } void lastorder(Bnode *p) { if(p!=NULL) { lastorder(p-lchild); lastorder(p-rchild); printf(%6d,p-data); } } void lastorderz(Bnode *p) { Bnode * s[10],*q;int s2[20]; int top=0,boo=1; q=p; printf(后根遍历); do{ while(q!=NULL) { top++;s[top]=q; s2[top]=1; q=q-lchild; } if(top==0) boo=0; else { if(s2[top]==1) { s2[top]=2; q=s[top]; q=q-rchild; } else { q=s[top]; s2[top]=0;top--; printf(%6d,q-data); q=NULL; } } }while(boo==1); printf(\n); } void levelorder(Bnode *p) { Bnode *q[20]; int front=0,rear=0; if(p!=NULL){rear++;q[rear]=p;} while(front!=rear) { front++;p=q[front];printf(%6d,p-data); if(p-lchild!=NULL){rear++;q[rear]=p-lchild;} if(p-rchild!=NULL){rear++;q[rear]=p-rchild;} } } void numofleaf(Bnode *p,int *m) { if(p!=NULL) { if(p-lchild==NULLp-rchi

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档