以如下二叉树为例:
![在这里插入图片描述](https://img-blog.csdnimg.cn/2021032220465795.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0NTI0OTE4,size_16,color_FFFFFF,t_70)
1、二叉树的先序遍历
【遍历过程】
a.访问根结点;
b.先序遍历其左子树;
c.先序遍历其右子树。
先序遍历序列为:ABDEFCGH
【代码】
//前序遍历
void GetPreOT(int bt){
if(bt == -1) return ;
else{
cout << T[bt].Data;
GetPreOT(T[bt].Left);
GetPreOT(T[bt].Right);
}
}
2、二叉树的中序遍历
【遍历过程】
a.中序遍历其左子树;
b.访问根结点;
c.中序遍历其右子树。
中序遍历序列为:DBFEAHGC
【代码】
//中序遍历
void GetInOT(int bt){
if(bt == -1) return ;
else{
GetInOT(T[bt].Left);
cout << T[bt].Data;
GetInOT(T[bt]