码迷,mamicode.com
首页 > 其他好文 > 详细

二叉树的三种遍历方式

时间:2019-06-15 00:27:43      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:char   bsp   扩展   先序遍历   ace   strong   creat   tno   节点   

#include<iostream>

using namespace std;

#define QUEUE_INIT_SIZE 100 //循环队列初始元素个数

#define QUEUEINCREMENT 10 //循环队列空间扩展增量

typedef char TElemType;

typedef struct BiTNode{

       TElemType data;

       struct BiTNode *lchild, *rchild;    /*左右孩子指针*/

}BiTNode, *BiTree;

 

 

//创建二叉树(先序遍历方式)

void CreateBiTree (BiTree &T) {

char ch;

       /

                     cin>>ch;

       if(ch==‘#‘)

       {

              T=NULL;

       }

       else

       {

              T=new BiTNode;   //生成根节点

              T->data=ch;

              CreateBiTree(T->lchild);

              CreateBiTree(T->rchild);

       }//按先序输入二叉树结点的值(#表示空),递归创建二叉链表

       

}

//先序遍历

void PreOrderTraverse (BiTree T) {

       

                     if(T)

       {

              cout<<T->data;

              PreOrderTraverse (T->lchild);

              PreOrderTraverse (T->rchild);

       }

       else cout<<"";//按先序递归显示二叉树结点的值

       

}

//中序遍历

void InOrderTraverse (BiTree T) {

       

              if(T)

       {

              InOrderTraverse(T->lchild);

              cout<<T->data;

              InOrderTraverse(T->rchild);

       }

       else cout<<""; //按中序递归显示二叉树结点的值

       

}

//后序遍历

void PostOrderTraverse (BiTree T) {

       

       if(T)

       {

              PostOrderTraverse (T->lchild);

              PostOrderTraverse (T->rchild);

              cout<<T->data;

       }

       else cout<<""; //按后序递归显示二叉树结点的值

       

}

二叉树的三种遍历方式

标签:char   bsp   扩展   先序遍历   ace   strong   creat   tno   节点   

原文地址:https://www.cnblogs.com/huqian477/p/huqian4.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!