From 26f69600992bb0fea96de25931e607f4df18f89f Mon Sep 17 00:00:00 2001 From: CHONGMYOUNG LEE <53869165+dlchdaud123@users.noreply.github.com> Date: Mon, 16 Jun 2025 10:32:14 +0900 Subject: [PATCH] =?UTF-8?q?[=EC=9D=B4=EC=B4=9D=EB=AA=85]=20Day16?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Q617.java" | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 "leetcode2/1easy/\354\235\264\354\264\235\353\252\205/Q617.java" diff --git "a/leetcode2/1easy/\354\235\264\354\264\235\353\252\205/Q617.java" "b/leetcode2/1easy/\354\235\264\354\264\235\353\252\205/Q617.java" new file mode 100644 index 00000000..13a000e5 --- /dev/null +++ "b/leetcode2/1easy/\354\235\264\354\264\235\353\252\205/Q617.java" @@ -0,0 +1,40 @@ +/** + * Definition for a binary tree node. + * public class TreeNode { + * int val; + * TreeNode left; + * TreeNode right; + * TreeNode() {} + * TreeNode(int val) { this.val = val; } + * TreeNode(int val, TreeNode left, TreeNode right) { + * this.val = val; + * this.left = left; + * this.right = right; + * } + * } + */ +class Solution { + public TreeNode mergeTrees(TreeNode root1, TreeNode root2) { + // 둘 다 null이면 종료 + if(root1 == null) return root2; + if(root2 == null) return root1; + + // 두 노드 중 하나라도 null이면 0으로 간주해서 값을 더함. + int val1 = (root1 != null) ? root1.val : 0; + int val2 = (root2 != null) ? root2.val : 0; + + TreeNode newNode = new TreeNode(val1 + val2); + + newNode.left = mergeTrees( + (root1 != null) ? root1.left : null, + (root2 != null) ? root2.left : null + ); + + newNode.right = mergeTrees( + (root1 != null) ? root1.right : null, + (root2 != null) ? root2.right : null + ); + + return newNode; + } +}