其他答案
#include <iostream>#include<stack>#include<string>using namespace std;template <class T>struct BiNode //二叉树的结点结构{ T data;BiNode<T>*lchild, *rchild;};template 展开
#include <iostream>#include<stack>#include<string>using namespace std;template <class T>struct BiNode //二叉树的结点结构{ T data;BiNode<T>*lchild, *rchild;};template <class T>class BiTree{public: BiTree( );//构造函数,初始化一棵二叉树,其前序序列由键盘输入 ~BiTree(void);//析构函数,释放二叉链表中各结点的存储空间 BiNode<T>* Getroot();//获得指向根结点的指针 void PreOrder(BiNode<T>*root);//前序遍历二叉树 jiaohuan(BiNode<T>*root);private: BiNode<T>*root;//指向根结点的头指针 BiNode<T>*Creat( );//有参构造函数调用 void Release(BiNode<T>*root);//析构函数调用 };/* *前置条件:二叉树不存在 *输 入:无 *功 能:构造一棵二叉树 *输 出:无 *后置条件:产生一棵二叉树 */template<class T>BiTree<T>::BiTree( ){ this->root = Creat( );}/* *前置条件:二叉树已存在 *输 入:无 *功 能:释放二叉链表中各结点的存储空间 *输 出:无 *后置条件:二叉树不存在 */template<class T>BiTree<T>::~BiTree(void){ Release(root);}/* *前置条件:二叉树已存在 *输 入:无 *功 能:获取指向二叉树根结点的指针 *输 出:指向二叉树根结点的指针 *后置条件:二叉树不变 */template<class T>BiNode<T>* BiTree<T>::Getroot( ){ return root;}/* *前置条件:二叉树已存在 *输 入:无 *功 能:前序遍历二叉树 *输 出:二叉树中结点的一个线性排列 *后置条件:二叉树不变 */template<class T>void BiTree<T>::PreOrder(BiNode<T>*root){ if(root==NULL) return;else{ cout<<root->data<<"";PreOrder(root->lchild);PreOrder(root->rchild);}}/* *前置条件:空二叉树 *输 入:数据ch;*功 能:初始化一棵二叉树,构造函数调用 *输 出:无 *后置条件:产生一棵二叉树 */template <class T>BiNode<T>* BiTree<T>::Creat( ){ BiNode<T>* root;T ch;cout<<"请输入创建一棵二叉树的结点数据"<<endl;cin>>ch;if (ch=="#") root = NULL;else{ root = new BiNode<T>;//生成一个结点 root->data=ch;root->lchild = Creat( );//递归建立左子树 root->rchild = Creat( );//递归建立右子树 } return root;}/* *前置条件:二叉树已经存在 *输 入:无 *功 能:释放二叉树的存储空间,析构函数调用 *输 出:无 *后置条件:二叉树不存在 */template<class T>void BiTree<T>::Release(BiNode<T>* root){ if (root != NULL){ Release(root->lchild);//释放左子树 Release(root->rchild);//释放右子树 delete root;} }template<class T>BiTree<T>:: jiaohuan(BiNode<T>*root){ string m;if (root != NULL) { m=root->lchild->data;root->lchild->data=root->rchild->data;root->rchild->data=m;}}void main(){ BiTree<string>bt;//创建一棵树 BiNode<string>* root = bt.Getroot( );//获取指向根结点的指针 cout<<"------前序遍历------ "<<endl;bt.PreOrder(root);cout<<endl;bt.jiaohuan(root);bt.PreOrder(root);cout<<endl;} 收起
2010-08-17 02:03
来自北京市
赞(0)点赞赞(0)举报
发布评论
房天下知识为您分享了一条干货
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。
相关问题
- 35回答 我目前有50万左右,在成都哪里买房合适?
- 57回答 儿子吵着要大客厅,怎样装修才能让我家的客厅显得更大呢? 现在的客厅只有15平左右。
- 37回答 按揭的房子不是现房还能贷款吗?能贷款3万左右吗
- 23回答 想要10号线沿线,总价在240万左右的两房,有没有推荐啊?
- 22回答 我想买一辆12万左右的家用轿车,请问买什么车较好?
- 27回答 想买一套二的房用来出租,位置好的70-80万左右,买哪合适
- 28回答 你们网上发布的有170平米的房子,价钱330万左右,为什么现在说没有?
- 7回答 买高层,是选30层左右,还是低点10层左右好。
- 1回答 左右思考
- 40回答 请问如果房子的楼龄在十五年左右,那我银行贷款可以申请到几成?
- 2回答 多灵锁具门锁左右:这个门锁区分左右吗?
- 3回答 20W左右的
- 1回答 购90年左右建房面积5000平米左右西北四环
- 1回答 我要在杭州买房均价2万左右 面积180左右的
- 4回答 200元左右鼠标
- 2回答 成都月薪多少能买5000左右/㎡的100左右平方的房子
- 3回答 我想在后湖买9000左右的,90左右的,求推荐。要有地铁
- 28回答 天津信用卡有5万欠款会不会影响公积金贷款?夫妻俩月收入8000左右,但是没有逾期
- 1回答 想要买一套80--100平米左右楼房,房价在20万左右
- 6回答 买55万左右的房子付多少首付划算啊,手头有30万左右
- 3回答 月收入5000左右 想按揭7万左右的车怎么弄 月供多少
相关资讯
- 新城区政府人都在看!左右城10月房价报告出炉
- 价格走势去哪找?吉大左右方的所有情报,都在这!
- 均价5100元/㎡左右 太原配售型保障房锦绣汾东申购进行时
- 本月买房,你一定不能错过这份左右城8月房价报告!
- 国家发改委:2025年GDP规模有望达到140万亿元左右
- 捡漏啦!象湖滨江地铁口现房单价6000左右~
- 暖春焕新宅|主体结构最高建至13层左右 达智高地麻章新盘“全速推进”中
- 国家发改委主任:今年实现5%左右的增速目标有基础有支撑有保障
- 新城区政府人都在看!左右城1月房价报告出炉
- 约90㎡左右户型为主!限制上市交易!宁波配售型保障住房公开征求意见
- 备案价4.8-5.8万左右 崂山添纯正洋房
- 2025年经济增长目标5%左右,广东怎么拼?
- 最受欢迎文章速览:三亚中高端酒店春节期间1000元左右,三亚酒店价格为何保持稳定?
- 热文TOP10:三亚中高端酒店春节期间1000元左右,三亚酒店价格为何保持稳定?
- 新城海鑫苑 VS 松江左右城,哪个更宜居?
- 【楼盘评测】松江左右城,2024年12月呼和浩特新城必看品质楼盘!
- 本月买房,你一定不能错过这份左右城11月房价报告!
- 本月买房,你一定不能错过这份阳光左右间11月房价报告!
- 楼盘测评|市政核心配套都在家附近,230万左右就能买到三房?
- 你没见过如此详细的数据!左右城10月市场报告发布!
回答成功




