2022年数据结构试验树的建立于运算可用 .pdf

上传人:H****o 文档编号:39706415 上传时间:2022-09-07 格式:PDF 页数:5 大小:91.42KB
返回 下载 相关 举报
2022年数据结构试验树的建立于运算可用 .pdf_第1页
第1页 / 共5页
2022年数据结构试验树的建立于运算可用 .pdf_第2页
第2页 / 共5页
点击查看更多>>
资源描述

《2022年数据结构试验树的建立于运算可用 .pdf》由会员分享,可在线阅读,更多相关《2022年数据结构试验树的建立于运算可用 .pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、实验报告实验名称:数据结构实验四实验内容:树的建立与运算实验仪器:计算机学院:计算机学院班级:B 软件工程学号:XXXXX 姓名:XXXX 成绩:指导教师:XXX 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 5 页 -实验四树的建立与运算问题描述生成一棵以二叉链表存储的二叉树bt(不少于15 个结点)。分别用递归和非递归方法前序遍历bt,并以缩格形式打印bt 上各结点的信息。编写算法,交换 bt 上所有结点的左、右子树,并以缩格形式打印出交换前后的bt 结点信息。程序代码#includestdafx.h#includestdio.h#includestdlib.h#inclu

2、deconio.h usingnamespace System;struct tnode int data;tnode*left;tnode*right;int lw;int ld;struct Q_node tnode*data;Q_node*next;class queue Q_node*head;public:queue()head=NULL;void In(tnode*d)Q_node*t=(Q_node*)malloc(sizeof(Q_node);t-next=NULL;t-data=d;if (NULL=head)head=t;else Q_node*p=head;for (;p

3、-next;p=p-next);p-next=t;tnode*Out()tnode*res=head-data;Q_node*p=head;head=head-next;free(p);return res;int HasNext()if (head)return 1;elsereturn 0;tnode*root;名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 5 页 -int CreateTree(tnode*r)(*r)=(tnode*)malloc(sizeof(tnode);(*r)-left=NULL;(*r)-right=NULL;return 1;void Cre

4、ateEmptyNode(tnode*n)CreateTree(n);int Insert(tnode*r,int d)tnode*newnode;CreateEmptyNode(&newnode);newnode-data=d;int NotFinded=1;tnode*p=r;while(NotFinded)if (d=p-data&p-right=NULL)p-right=newnode;NotFinded=0;elseif (ddata&p-left=NULL)p-left=newnode;NotFinded=0;elseif (d=p-data)p=p-right;else p=p-

5、left;return 1;int Retree(int LBorder,tnode*node,int level)node-ld=level;if (NULL=node-left)node-lw=LBorder;else node-lw=Retree(LBorder,node-left,level+1)+2;int r_child_width=node-lw;if (NULL!=node-right)r_child_width=Retree(node-lw+2,node-right,level+1);return r_child_width;void PrintTree(tnode*r)qu

6、eue que;que.In(r);int level=r-ld;int pos=0;char line72;for (int i=0;ild level)level+;printf(n);printf(%sn,line);pos=0;for (int i=0;i71;i+)linei=;line71=0;for (int i=pos;ilw;i+)printf();printf(%2d,temp-data,temp-lw,pos);pos=temp-lw+2;名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 5 页 -if (temp-left)linetemp-lw+1=+;f

7、or(int i=temp-lw;i2+temp-left-lw;i-)linei=-;linetemp-left-lw+2=/;que.In(temp-left);if (temp-right)linetemp-lw+1=+;for(int i=temp-lw+2;iright-lw;i+)linei=-;linetemp-right-lw=;que.In(temp-right);void Reloadtree(tnode*node)tnode*temp;temp=node-left;node-left=node-right;node-right=temp;if (NULL!=node-le

8、ft)Reloadtree(node-left);if (NULL!=node-right)Reloadtree(node-right);int main()int datas=25,18,12,2,17,26,10,0,21,11,15,31,1,9,22,37,9,45,16,33,-1;CreateTree(&root);root-data=datas0;for (int i=1;datasi!=-1;i+)Insert(root,datasi);Retree(0,root,0);PrintTree(root);Reloadtree(root);Retree(0,root,0);printf(n);PrintTree(root);free(root);while(!kbhit();return 0;名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 5 页 -运行结果名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 5 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁