Leetcode Java Maximum Binary Tree II
업데이트:
문제
코드
class Solution {
public TreeNode insertIntoMaxTree(TreeNode root, int val) {
if (root == null || val > root.val) {
TreeNode treeNode = new TreeNode(val);
treeNode.left = root;
return treeNode;
} else {
root.right = this.insertIntoMaxTree(root.right, val);
return root;
}
}
}
결과
설명
- 이진 트리 노드인 root에 val에 해당하는 노드를 이어주는 문제이다.
- 단, b는 a에 존재하지 않는 값이다.
- root가 null이거나 val이 root의 val 값보다 큰 경우, 아래를 수행한다.
- treeNode에 val을 이용하여 새 TreeNode를 생성하여 treeNode의 left 자식 노드에 root를 넣은 후 treeNode를 반환한다.
- 위의 경우가 아니라면 root의 right 자식 노드 자리에 root의 right TreeNode를 이용하여 재귀 호출한 결과를 넣어주고 root를 반환한다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기