513.找树左下角的值
该题目比较简单,直接使用层序遍历即可
112. 路径总和
这道题目与前面所求的二叉树的所有路径几乎一致。均为前序遍历并且加上回溯的过程
112. 路径总和ii
这道题目也是回溯的相关使用
这道题目需要注意的是什么时候回溯什么时候不回溯,以及回溯的对象是谁。首先对于二叉树而言,我们要知道的是,根节点绝对不能被pop出去。所以对于每个left和right的pop实际上就是每次left和right加进去以后,你改变了path的值,所以才需要pop。如果你不是采用地址修改,直接复制的话,那么就不需要popback了,但是这样的速度会很慢。因此我们可以得到sum这里我们没有采用地址,因此不需要回溯操作。这里与传统的回溯也是一样的,需要仔细思考
106.从中序与后序遍历序列构造二叉树
就是判断怎么切割数组。首先从后序数组中得到root值,然后以此为分割点去切割中序数组,然后再去切割后序数组。递归进行就可以了。这道题目感觉第一次做的话很难,后续的话掌握思路就比较简单了 。
105.从前序与中序遍历序列构造二叉树
这个题目其实跟后序中序构建二叉树一样,前序和后序的目的均为找到root,然后中序切割数组。因此我们可以得到,如果使用前序后序我们是无法得到一个二叉树的,或者说无法确定一颗二叉树