二叉树的前中后序遍历
引自:https://www.cnblogs.com/lhc-yyl-lyx-lyh/p/8439997.html
前序遍历:
前序遍历(DLR),是二叉树遍历的一种,也叫做先根遍历、先序遍历、前序周游,可记做根左右。前序遍历首先访问根结点然后遍历左子树,最后遍历右子树。
前序遍历就是类似dfs的方式,从根结点一直从左子树向下直到叶结点,然后返回到叶结点的父亲,再从其父结点的右子树向下。(根左右)
中序遍历:
中序遍历(LDR)是二叉树遍历的一种,也叫做中根遍历、中序周游。在二叉树中,先左后根再右。巧记:(左根右)。
中序遍历是先访问左儿子---父亲---右儿子。
后序遍历:
后序遍历(LRD)是二叉树遍历的一种,也叫做后根遍历、后序周游,可记做左右根。后序遍历有递归算法和非递归算法两种。在二叉树中,先左后右再根。巧记:左右根。
后序遍历是先访问左儿子---右儿子---父亲。(左右根)
小练习:
对于这个图,它的
前序遍历:A---B---D---E---G---J---H---C---F---I---K---L
中序遍历:D---B---J---G---E---H---A---C(f为右结点)---K---I---L---F
后序遍历:D---J---G---H---E---B---K---L---I---F---C---A