二叉树非递归的遍历c++
时间: 2023-01-11 13:55:36 浏览: 148
c++实现二叉树的4种遍历(递归和非递归)(csdn)————程序.pdf
二叉树的非递归遍历有两种常用的方法: 先序遍历和中序遍历。
先序遍历的非递归算法步骤如下:
1. 创建一个栈, 用于存储节点。
2. 将根节点入栈。
3. 只要栈不为空, 就执行以下操作:
a. 取出栈顶节点。
b. 访问栈顶节点。
c. 如果栈顶节点有右子节点, 则将右子节点入栈。
d. 如果栈顶节点有左子节点, 则将左子节点入栈。
中序遍历的非递归算法步骤如下:
1. 创建一个栈, 用于存储节点。
2. 将根节点入栈。
3. 只要栈不为空, 就执行以下操作:
a. 取出栈顶节点。
b. 如果栈顶节点有右子节点, 则将右子节点入栈。
c. 访问栈顶节点。
d. 如果栈顶节点有左子节点, 则将左子节点入栈。
阅读全文