教你如何记住二叉树的遍历方式!

二叉树的前序,中序,后序遍历真是看一遍就会,看过就忘的小妖精啊,在这里总结一下窍门。
实际上前序,中序和后序遍历的命名是体现在根节点的位置的,也就是说根节点在前的是前序,根节点在中间的是中序,根节点在后的是后序,而左子树和右子树的顺序是不变的,先左后右,男左女右(呸呸呸)。

  • 前序遍历顺序:根节点,左子树,右子树
  • 中序遍历顺序:左子树,根节点,右子树
  • 后序遍历顺序:左子树,右子树,根节点

还有一点关键的是,比如前序遍历顺序并不是根节点,左孩子,右孩子;而是根节点,左子树,右子树,里面是蕴含了递归思想的,记住了这两点就肯定不会错了。举个例子吧:
教你如何记住二叉树的遍历方式!
对上图这颗简单的树进行中序遍历

  1. 按照“左子树,根节点,右子树”,首先处理A的左子树(注意,不是A的左孩子,如果你想成了A的左孩子,那你就会写下第一个元素B,这是错误的)。A的左子树“BD”再次按照“左子树,根节点,右子树”的顺序,左子树只有一个叶子节点D,所以D才是最终结果中的第一个元素。“D”
  2. 回溯一层,按照“左子树,根节点,右子树”的顺序,左子树处理完了,该处理根节点B,这就是结果的第二个元素,“DB”;
  3. B的右子树是空的,所以再上溯一层,按照“左子树,根节点,右子树”的顺序,处理根节点A,这是结果的第三个元素,“DBA”
  4. 就这样依次递推下去,结果是“DBAFEGC”。

感觉写得有些啰嗦了,拜拜!