实验五二叉树操作

实验五二叉树操作

ID:32765711

大小:58.82 KB

页数:11页

时间:2019-02-15

实验五二叉树操作_第1页
实验五二叉树操作_第2页
实验五二叉树操作_第3页
实验五二叉树操作_第4页
实验五二叉树操作_第5页
资源描述:

《实验五二叉树操作》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验五二叉树操作实验五二叉树操作一、实验目的1、掌握二叉树的基本概念,链表描述方法;遍历方法。二、实验内容1、创建二叉树类。二叉树的存储结构使用链表。2、提供操作:前序遍历、中序遍历、后序遍历、层次遍历、计算二叉树结点数目、计算二叉树高度。3、对建立好的二叉树,执行上述各操作。4、接收键盘录入的二叉树前序序列和中序序列(各元素各不相同),输出该二叉树的后序序列。代码//exp5.cpp:定义控制台应用程序的入口点。//#include〃stdafx・h"#inclucle^BinaryTrcc.h〃#include〃Bina/ryTreeNode.h〃#includ

2、eiostreamusingnamespacestd;//BinaryTreeinta,x,y,z;intcount=0;//tcmplatcclassT//voidct(BinaryTreeNodeT*t){count++;}int_tmain(intargc,_TCHAR*argv){//y.MakeTree(1,a,a);//z.MakeTree(2,a,a);//x.MakeTree(3,y,z);//y.MakeTree(4,x,a);intlength;cout〃输入数的节点数:〃;cinlongth;chair*preOd二newchar[1ength

3、];char*inOd二newchar[length];cout"前序输入序列:";for(inti=0;ilength;i++){cinpreOd[i];cout〃第〃i〃个〃;}cout〃中序输入序列:〃;for(intj=0;jlength;j++)cininOd[j];BinaryTreechartr;tr.prelnOd(preOd,inOd,length);cout〃后序序列:〃;tr.PostOutput();cout〃前序遍历结果:〃;tr.PreOutput();cout〃中序遍历结果tr.InOutput();cout"逐层遍历结果:";tr.L

4、evelOutput();cout〃树的高度:/ztr.Height()endl;//tr>PreOrder(ct);//cout,/树的节点数目:"countendl;//cout/z后序遍历结果:〃;//y.PostOutput();systcm(〃pausc〃);return0;}///////////////////////////////////////BinaryTree.h#pragmaonce#includcz,BinaryTrceNodc.h〃#include〃BadTnput.h〃#include〃LinkedQueue.h〃#include〃i

5、ostteam〃#includez/0ut0fBounds.h〃usingnamespacestd;templateclassTclassBinaryTree{public:BinaryTree(){root=0;}^BineiryTree(void);boolIsEmpty()const{return((root)?false:true);}boolRoot(T&x)const;voidMakeTree(constT&element,BinaryTreeT&left,BinaryTreeT&right);voidPreOrder(void(*Visit)(Binc

6、iryTreeNodeT*u)){PreOrder(Visit,root):}voidInOrder(void(*Visit)(BinaryTrccNodcT*u)){InOrder(Visit,root);}voidPostOrder(void(*Visit)(BinaryTreeNodeT*u)){PostOrder(Visit,root);}voidLcvclOrder(void(*Visit)(BinaryTrccNodcT*u));intHeight()const{returnHeight(r()()t);}//intSize(){//count二0;//

7、PreOrder(Add1,root);//rcturricount;//}voidPreOutput(){PreOrder(Output,root);coutendl;}voidInOutput(){InOrder(0utput,toot);coutcndl;}voidPostOutput(){PostOrder(Output,root):coutendl;}voidLevelOutput(){LevelOrder(Output);coutendl;}voidprelnOcl(TprcOcl,TinOd,intlen){root=newBinciryTreeN

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

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

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