学了学二叉树,这里说说怎样遍历二叉树.
四种方式:前序遍历,中序遍历,后序遍历,层次遍历.
主要说说递归的遍历方法
前序: 先根节点,后左子树,再右子树.
中序: 先左子树,后根节点,再右子树.
后序: 先左子树,后右子树,再根节点.
层序遍历:按照层的关系,从上到下,从左到右,一个一个遍历(用队列实现)
这是图片形式:
![](https://img.haomeiwen.com/i4378666/90ca1c64022dc0cf.png)
这是先序遍历的非递归方法
![](https://img.haomeiwen.com/i4378666/71045a1be900a5de.png)
中序:
![](https://img.haomeiwen.com/i4378666/dbccac1b34f7d44c.png)
后序:
![](https://img.haomeiwen.com/i4378666/ca8ac7ea9e4e37a9.png)
层序:
![](https://img.haomeiwen.com/i4378666/44424270a9b75d36.png)
然后有一类题,给你中序和前序(或后序)叫你写出其他序的遍历顺序.
所以你要做的事是通过给你的那两个序先把二叉树建好,然后输出什么序就简单了.
有一道类似的题目在另外一篇文章中.
网友评论