
又是树的题目,直接递归吧。先理清楚节点各种情况的处理方法,总结了一下如下图:

首先,上面是 t1 和 t2 可能出现的情况和处理方式,下面是对例子画了一下递归的讲解图。最后写成代码如下:
public class lc617 {
public TreeNode mergeTrees(TreeNode t1, TreeNode t2) {
if (t1 == null) return t2;
if (t2 == null) return t1;
t1.val += t2.val;
t1.left = mergeTrees(t1.left, t2.left);
t1.right = mergeTrees(t1.right, t2.right);
return t1;
}
}
运行直接通过。

这篇博客探讨了LeetCode的第617题——合并二叉树,通过递归的方式解决。博主详细阐述了处理节点的各种情况,并用图表辅助解释了递归过程,最终展示了一段成功通过测试的代码。

188

被折叠的 条评论
为什么被折叠?



