欢迎来到天天文库
浏览记录
ID:31875853
大小:103.50 KB
页数:3页
时间:2019-01-23
《关于树的创建和操作问题.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、关于树的创建和操作问题1.问题描述设计一棵树类,实现对树的广义表输出,以及对树的一些基本操作2.功能要求(1)设计一棵树类,采用孩子兄弟链表的存储方法(2)实现对树结点的插入操作(3)实现对树中结点的删除操作(4)对树进行前根,后根,层序遍历的操作3.实现要点采用孩子兄弟链表的存储方式便于实现对树的各种操作。对树的遍历采用了递归的函数方法。4.类定义template//树中结点采用孩子兄弟表示法structTNode//结构体的定义{Tdata;//结点的数据TNode*firstchild,
2、*rightsib;//结点的第一个孩子结点和兄弟结点};templateclassTree//类的具体定义{public:Tree();//构造函数,初始化一棵树,其序列由键盘输入~Tree(void);//析构函数TNode*Getroot();//获得根结点的指针voidInsert(ToldData,TnewData);//在某一结点插入新的结点数据voidDelete(Tdata);//删除树中某结点及其孩子结点voidPreOrder(TNode*root);//前序遍历树v
3、oidPostOrder(TNode*root);//后序遍历树voidLeverOrder(TNode*root);//层序遍历树voidlist(TNode*root);//树的广义表输出方法private:TNode*root;TNode*FindNode(Tdata);//查询函数voidInsertBrother(TNode*node,Tdata);//插入兄弟结点点voidInsertChild(TNode*node,Tdata);//插入第一个孩子结点void
4、Release(TNode*root);//析构函数调用};5.程序的运行(1)树的构建(2)对树进行结点的插入操作(3)对树结点进行删除操作(4)对树进行前根,后根,层序遍历的操作
此文档下载收益归作者所有