前序遍历是二叉树的一种遍历方式,指先访问某个节点再访问它的左子节点和右子节点。具体步骤如下:
- 访问当前节点
- 如果当前节点有左子节点,则递归执行前序遍历左子节点
- 如果当前节点有右子节点,则递归执行前序遍历右子节点
以如下二叉树为例,前序遍历的访问顺序为:A, B, D, E, C, F, G。
A
/ \
B C
/ \ / \
D E F G
中序遍历是二叉树遍历的一种方式。对于一棵二叉树,中序遍历的顺序为:先访问左子树,然后访问根节点,最后访问右子树,遍历的结果就是按照节点值从小到大输出。
具体遍历过程可以使用递归或者栈来实现。对于某个节点,我们先访问它的左子树,然后输出该节点的值,最后访问它的右子树。
中序遍历的步骤:
-
如果树为空,则返回。
-
对左子树进行中序遍历。
-
访问根节点。
-
对右子树进行中序遍历。
例如,对于如下二叉树:
例如,对于下面这棵二叉搜索树:
8
/ \
3 10
/ \ \
1 6 14
/ \ /
4 7 13
按照中序遍历的顺序,遍历结果为:1 3 4 6 7 8 10 13 14。