》利用栈实现
Status PostOrderTraverse(BiTree T,Status(*Visit)(TElemType e)){ //后序遍历二叉链表,每个元素调用Visit
InitStack(S);P=T;
while (p||StackEmpty(S)){
if(p){
Push(S,p) //根节点入栈
p=p->lchild; //遍历左子树
}//if
else{
Pop(S,p); //根节点出栈,访问兄弟结点
p=p->father->rchild;
visit(p->data);
}//else
》递归实现
void PostOrder(BiTree T){
if(T){
PostOrder(T->lchild); //遍历左子树
PostOrder(T->rchild); //遍历右子树
printf("%c",T->data); //访问结点
}//if
}//PostOrder
本文介绍了一种使用栈实现的二叉树后序遍历算法及递归实现方式,详细展示了如何通过栈来辅助完成后序遍历的过程。
遍历二叉树&spm=1001.2101.3001.5002&articleId=79970803&d=1&t=3&u=2b007bca86254ed7a33ad350aca7efdf)
4625

被折叠的 条评论
为什么被折叠?



