- 前序遍历
template<class T>//前序遍历递归算法
void PreOrder(BTNode<T>* t)
{
if(!t)
return;
cout<<t->data;
if(t->left)
PreOrder(t->left);
if(t->right)
PreOrder(t->right);
}
- 中序遍历
template<class T>//中序遍历递归算法
void InOrder(BTNode<T>* t)
{
if(!t)
return;
if(t->left)
InOrder(t->left);
cout<<t->data;
if(t->right)
InOrder(t->right);
}
- 后序遍历
template<class T>//后序遍历递归算法
void PostOrder(BTNode<T>* t)
{
if(!t)
return;
if(t->left)
PostOrder(t->left);
if(t->right)
PostOrder(t->right);
cout<<t->data;
}