二叉树之遍历:广度遍历与深度遍历

二叉树,是Python重要的数据结构,依次获取二叉树的所有节点,就需要用遍历的方法来实现.

广度遍历
对每一层节点依次访问,访问完一层进入下一层,而且每个节点只能访问一次。以下图为例,我们要遍历A,第一层遍历BCDE,第二次遍历FGHI,第三层遍历JKLM.
需要用到队列(Queue)来存储节点对象,队列的特点就是先进先出.
在这里插入图片描述

深度遍历
对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次.以下图为例,我们要遍历A,第一层遍历BCDE,第二次遍历HI,第三层遍历LM,第四层遍历FG,第五层遍JK.
需要使用到栈(Stack)这种数据结构,stack的特点是是先进后出.

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_42367527/article/details/83144947