前序遍历:从根节点,左子树,右子树
若节点为空则遍历到子节点,退出遍历
void preorder(tree T){
if(T==NULL)
return;
cout<<T->data; //先打印
preorder(T->left);
preorder(T->right);
}
中序遍历:左子树,根节点,右子树(将调用左子树的递归提前)
void inorder(tree T){
if(T==NULL)
return;
inorder(T->left);
cout<<T->data; //中间打印
inorder(T->right);
}
后序遍历:左,后,右
void postorder(tree T){
if(T==NULL)
return;
postorder(T->left);
postorder(T->right);
cout<<T->data; //最后打印
}