关于先序遍历的详细介绍参见前面关于中序遍历的博文,这里仅给出先序遍历的递归及非递归的代码实现。
如图二叉树,其先序遍历结果为:1 2 4 8 5 3 6 9 10 7
Talk is cheap, show you the code.
递归实现
void PreOrderTraversal(BinTree BT)
{
if(BT){
printf("%d ", BT->Date);
PreOrderTraversal(BT->Left);
PreOrderTraversal(BT->Right);
}
}
非递归实现