二叉树结构特性

二叉树结构特性

ID:20097148

大小:494.00 KB

页数:4页

时间:2018-10-09

二叉树结构特性_第1页
二叉树结构特性_第2页
二叉树结构特性_第3页
二叉树结构特性_第4页
资源描述:

《二叉树结构特性》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、二叉树的结构特性实验目的1.掌握指针变量、动态变量的含义。2.掌握二叉树的结构特性以及各种存储结构的特点和适用范围。实验内容与步骤2.编写一个程序实现二叉树的各种遍历算法。程序为:#include#include#includetypedefstructtree{chardata;structtree*lc,*rc;}Tree;charpre[30]="EBADCFHGIKJ",in[30]="ABCDEFGHIJK";voidFound_Tree(Tree*&

2、bt,intpb,intpe,intib,intie){inti,j;Tree*s;if(pe>=pb&&ie>=ib){s=(Tree*)malloc(sizeof(Tree));s->data=pre[pb];bt=s;i=ib;j=pb;while(in[i]!=pre[pb]){i++;j++;}Found_Tree(s->lc,pb+1,j,ib,i-1);Found_Tree(s->rc,j+1,pe,i+1,ie);}else{bt=NULL;}}voidLoop_Traverse_Tree(Tree*b

3、t){if(bt){printf("%c",bt->data);Loop_Traverse_Tree(bt->lc);Loop_Traverse_Tree(bt->rc);}}实验内容与步骤实voidPre_Traverse_Tree_sta(Tree*root){Tree*sta[50];inti=1;if(root){sta[i]=root;i++;while(i>1){while(sta[i-1]){root=sta[i-1];printf("%c",root->data);sta[i]=root->lc;i++

4、;}i--;if(i>1){i--;sta[i]=sta[i]->rc;i++;}}}}voidIn_Traverse_Tree_sta(Tree*root){inti;Tree*sta[50];i=1;if(root){sta[i]=root;i++;while(i>1){while(sta[i-1]){root=sta[i-1];sta[i]=root->lc;i++;}i--;if(i>1){printf("%c",sta[i-1]->data);i--;sta[i]=sta[i]->rc;i++;}验内容与步骤

5、}}}voidLast_Traverse_Tree_sta(Tree*root){Tree*sta[50];inti=1;if(root){sta[i]=root;i++;while(i>1){while(sta[i-1]){sta[i]=sta[i-1]->lc;i++;}i--;if(i>1){sta[i]=sta[i-1]->rc;i++;if(sta[i-1]==NULL){i=i-2;printf("%c",sta[i]->data);while(i>1&&sta[i-1]&&sta[i]==sta[i-1]

6、->rc){printf("%c",sta[i-1]->data);i--;}if(i>1){sta[i]=sta[i-1]->rc;i++;}}}}}}voidmain(){intlen;Tree*root;len=strlen(pre);Found_Tree(root,0,len-1,0,len-1);Loop_Traverse_Tree(root);printf("下面是前序遍历Pre:");Pre_Traverse_Tree_sta(root);printf("下面是中序遍历In:");

7、In_Traverse_Tree_sta(root);printf("下面是后序遍历:End");Last_Traverse_Tree_sta(root);printf("");}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。