LeetCode之合并二叉树
合并二叉树
1. 题目

2. 解题思路
采用递归和后序遍历的方式来同时遍历两棵树。遍历的同时,一定要判断两颗树的当前节点是否为空。然后创建一个新的节点,节点值为两个节点之和。遍历完成后即可得到合并后的树。
3. 解题步骤
- 判断当前两颗树的节点全为空,如果为空则返回空。
- 反之有以下三种
- 可能两个节点都不为空
- 左节点为空,右节点不为空
- 右节点为空,左节点不为空
- 采取以下措施
- 当为第一种情况时 ,创建一个新的节点,节点值为左右节点值的和,之后遍历左右节点
- 当为第二种情况时 ,创建一个新的节点,节点值为右节点值,之后遍历右节点.
- 当为第三种情况时 ,创建一个新的节点,节点值为左节点值,之后遍历左节点。
- 返回创建的新的节点。
4. 代码
1 | class Solution { |
5. 总结
以目前我做的与树相关的题目来说。所需要做的事基本上就是一件事:遍历。而树的遍历一般可以通过递归的方式来进行一些简单的遍历。遍历一般分为三种:前序遍历、中序遍历、后序遍历。前序、中序、后序的名字是按照遍历中父节点,相对于左右子节点中的顺序。如果父节点,在其子父节点中最后一个遍历,称之为后序遍历。其他的遍历顺序可由以上类推。
https://xinc-it.github.io/2025/03/02/LeetCode%E4%B9%8B%E5%90%88%E5%B9%B6%E4%BA%8C%E5%8F%89%E6%A0%91/
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 无♥部落阁!
评论




