二叉树先序、中序、后序三种遍历的非递归算法
10122009 / No Comment / 备考资料
先序遍历非递归算法 #define maxsize 100 typedef struct { Bitree Elem[maxsize]; int top; }SqStack; void PreOrderUnrec(Bitree t) { SqStack s; StackInit(s); p=t; while (p!=null || !StackEmpty(s)) { while (p!=null) { // 遍历左子树 visite(p->data); push(s,p); p=p->lchild; } // endwhile if (!StackEmpty(s)) { // 通过下一次循环中的内嵌while实现右子树遍历 p=pop(s); p=p->rchild; } // endif } // endwhile } // PreOrderUnrec 中序遍历非递归算法 #define maxsize [...]