美文网首页
代码随想录算法训练营第十八天|513.找树左下角的值、112.

代码随想录算法训练营第十八天|513.找树左下角的值、112.

作者: eagleX | 来源:发表于2023-08-25 16:19 被阅读0次

513.找树左下角的值

思路:用迭代模板法,找到最后一层取第一个元素

递归的话首先要找到最后一行,深度最大的叶子节点一定是最后一行,使用前序遍历找到最左边

112. 路径总和  

思路:

递归:入参用根节点和目标和,终止条件是叶子节点和count==0返回true 否则返回false,递归函数返回true直接返回,其他返回false

113.路径总和ii

思路:

递归:这里递归函数就不需要返回值,记录等于目标数的集合;

回溯还是比较重要,用List<Integer>path=newLinkedList<>();记录path集合,递归返回后需要移除当前节点

106.从中序与后序遍历序列构造二叉树 105.从前序与中序遍历序列构造二叉树

思路:

递归六步学习了:

第一步:如果数组大小为零的话,说明是空节点了。

第二步:如果不为空,那么取后序数组最后一个元素作为节点元素。

第三步:找到后序数组最后一个元素在中序数组的位置,作为切割点

第四步:切割中序数组,切成中序左数组和中序右数组 (顺序别搞反了,一定是先切中序数组)

第五步:切割后序数组,切成后序左数组和后序右数组

第六步:递归处理左区间和右区间

代码实现起来不是很容易。

相关文章

网友评论

      本文标题:代码随想录算法训练营第十八天|513.找树左下角的值、112.

      本文链接:https://www.haomeiwen.com/subject/mqxbmdtx.html