数据结构&算法 树遍历
-
树遍历
遍历是访问树的所有节点并且也可以打印其值的过程。因为所有节点都是通过边(链接)连接的,所以我们总是从根(头)节点开始。也就是说,我们不能随机访问树中的节点。我们使用三种方式遍历树-- 中序遍历
- 前序遍历
- 后序遍历
通常,我们遍历一棵树以搜索或定位树中的给定项或键,或打印其中包含的所有值。 -
中序遍历
在这种遍历方法中,首先访问左子树,然后访问根,然后再访问右子树。我们应该永远记住,每个节点本身都可以代表一个子树。如果按顺序遍历二叉树,则输出将产生升序排序的键值。我们从A开始,按照顺序遍历,移动到它的左子树B。B也是按顺序遍历的。这个过程一直进行,直到访问了所有节点。这个树的中序遍历的输出将是−D → B → E → A → F → C → G算法 -
前序遍历
在这种遍历方法中,首先访问根节点,然后是左子树,最后是右子树。我们从A开始,并在进行预遍历之后,首先访问A本身,然后移至其左子树B。B也进行了预遍历。 一直进行到访问所有节点为止。 该树的预遍历的输出将是-A → B → D → E → C → F → G算法 -
后序遍历
在这种遍历方法中,根节点是最后访问的,因此是名称。首先,我们先遍历左侧子树,然后遍历右侧子树,最后遍历根节点。我们从A开始,然后经过后序遍历,首先访问左子树B。B也经过后序遍历。 一直进行到访问所有节点为止。 该树的后遍历的输出将是-D → E → B → F → G → C → A算法 -