非递归方法后序遍历二叉树

 1 while(p || !StackEmpty(S))
 2 {
 3     if(p)
 4     {
 5         push(S,p);
 6         p = p->lchild;
 7     }
 8     else if(p->rchild)
 9     {
10         p=p->rchild;
11     }
12     else if(!p->rchild)
13     {
14         pop(S,p);
15         visit(p);
16         p=GetTop(S);
17         if(!p->rchild)
18             continue;
19         p=p->rchild;
20             
21     }
22 }

猜你喜欢

转载自www.cnblogs.com/Alexzzzz/p/9280405.html