结点定义:
typedef struct Node
{
int data;
struct Node *left;
struct Node *right;
}BTreeNode;
先序遍历:
void PreOrder(BTreeNode* curr)
{
if(curr == NULL)
return;
cout << curr->data << " ";
PreOrder(curr->left);
PreOrder(curr->right);
}
中序遍历:
void InOrder(BTreeNode* curr)
{
if(curr == NULL)
return;
InOrder(curr->left);
cout << curr->data << " ";
InOrder(curr->right);
}
后序遍历:
void PastOrder(BTreeNode* curr)
{
if(curr == NULL)
return;
PastOrder(curr->left);
PastOrder(curr->right);
cout << curr->data << " ";
}