最近在学习数据结构和算法,在学习到二叉树这比部分时,对二叉树的先序,中序,后序遍历方式区分的不是很清楚,很容易将三种遍历方式的左右根节点的遍历顺序弄混淆。今天在阅读一位博友的博客时,想到了一种区分3中遍历方式的方法,希望对同样像我这样,不擅长死记硬背概念,喜欢通过理解来记忆的各位同学有些帮助。
先来看看先序,中序,后序遍历的定义。图片来之优快云博友cqnuztq的博客截图。
个人总结,先序,中序,后序指的是根节点在遍历时的顺序。先序遍历,就是先根节点,再左右节点,根节点首先被遍历,因此,称为先序;中序是先左节点,再根节点,在右节点,根节点在中间,因此称为中序。后序遍历,是先左右节点,最后根节点。
这只是本人的一些猜想。因为,本人一直认为,任何概念的命名都是有意义的,都跟此方法的实现过程或思路相关,因此,喜欢通过将命名与其过程或思路联系起来记忆。可能此概念的命名并非像本人理解的那样,但个人认为,这样理解是一种可行的方式,而且有助于本人的理解。若有谬误,请不吝指教。