์ฝ๋
class Solution {
public TreeNode sortedArrayToBST(int[] nums) {
// ์์ธ ์ฒ๋ฆฌ
if (nums.length == 0) {
return null;
}
// ๋ฐฐ์ด ์ ์ฒด๋ฅผ ๋๊ฒจ์ ํธ๋ฆฌ ์์ฑ ์์
return construct(nums, 0, nums.length - 1);
}
public TreeNode construct(int[] nums, int lo, int hi) {
// ์์ธ ์ฒ๋ฆฌ
if (lo > hi) {
return null;
}
// ์ค์๊ฐ ๊ณ์ฐ. ์์์ ์ ๋ด๋ฆผ์ผ๋ก
int mid = lo + (hi - lo) / 2;
// ๋ฐฐ์ด์ ์ค์๊ฐ์ผ๋ก ๋
ธ๋ ์์ฑ
TreeNode node = new TreeNode(nums[mid]);
// ์ผ์ชฝ ์์ ๋
ธ๋๋ ๋ฐฐ์ด ์๋ถ๋ถ์ ์ค์๊ฐ
node.left = construct(nums, lo, mid - 1);
// ์ค๋ฅธ์ชฝ ์์ ๋
ธ๋๋ ๋ฐฐ์ด ๋ท๋ถ๋ถ์ ์ค์๊ฐ
node.right = construct(nums, mid + 1, hi);
return node;
}
}
Java
๋ณต์ฌ