1.非递归的前序遍历
void inorderTravse(BiTree root) { Stack s = CreateStack(); BiTree T = root; while (T || !isEmpty(s)) { while (T) { printf("%d", T->data); push(s, T); T = T->lchild; } if (!isEmpty(s)) { T = pop(s); T = T->rchild; } } }
2.非递归的中序遍历
void inorderTravse(BiTree root) { Stack s = CreateStack(); BiTree T = root; while (T || !isEmpty(s)) { while (T) { push(s, T); T = T->lchild; } if (!isEmpty(s)) { T = pop(s); printf("%d", T->data); T = T->rchild; } } }
好了,我们下回见,peace
原文:https://www.cnblogs.com/gitpy123/p/13476781.html