首页 > 技术文章 > 非递归中序遍历二叉树

Coeus-P 2018-07-23 10:12 原文

读者手动模拟时需注意叶子节点的左右子树进入循环的情况

func(Tree T){

if(T==NULL){
	printf("树空");
	return;
}
Stack S;
while(T!=NULL||!IsEmpty(S)){
	if(T){
		push(S,T);
		T=T->lchild;
	}
	else{
		pop(S,T);
		visit(T);
		T=T->rchild;
	}
}

}

您可能感兴趣的

推荐阅读