Skip to content

Commit f1a1e78

Browse files
committed
solved: 104. Maximum Depth of Binary Tree
1 parent a8b9294 commit f1a1e78

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
/**
2+
* 104. Maximum Depth of Binary Tree
3+
* https://leetcode.com/problems/maximum-depth-of-binary-tree/
4+
*
5+
*/
6+
7+
/**
8+
* Definition for a binary tree node.
9+
* function TreeNode(val, left, right) {
10+
* this.val = (val===undefined ? 0 : val)
11+
* this.left = (left===undefined ? null : left)
12+
* this.right = (right===undefined ? null : right)
13+
* }
14+
*/
15+
/**
16+
* @param {TreeNode} root
17+
* @return {number}
18+
*/
19+
20+
/*
21+
* ์‹œ๊ฐ„ ๋ณต์žก๋„(TC): O(n)
22+
* ๊ณต๊ฐ„ ๋ณต์žก๋„(SC): O(n)
23+
*
24+
* ๊ด€๋ จ ์•Œ๊ณ ๋ฆฌ์ฆ˜: ๋ถ„ํ•  ์ •๋ณต Divide and Conquer, ์žฌ๊ท€ Recursion
25+
*
26+
* ๋ฌธ์ œ ํ’€์ด ๋ฐฉ๋ฒ•:
27+
* 1. ๋ฃจํŠธ ๋…ธ๋“œ๊ฐ€ ์—†์œผ๋ฉด 0์„ ๋ฐ˜ํ™˜
28+
* 2. ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์™ผ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด๋ฅผ ๊ณ„์‚ฐ
29+
* 3. ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด๋ฅผ ๊ณ„์‚ฐ
30+
* 4. ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์™ผ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด์™€ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด ์ค‘ ๋” ํฐ ๊ฐ’์„ ๋ฐ˜ํ™˜
31+
* 5. ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์™ผ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด์™€ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด ์ค‘ ๋” ํฐ ๊ฐ’์— 1์„ ๋”ํ•˜์—ฌ ๋ฐ˜ํ™˜
32+
*/
33+
34+
var maxDepth = function(root) {
35+
// ๋ฃจํŠธ ๋…ธ๋“œ๊ฐ€ ์—†์œผ๋ฉด 0์„ ๋ฐ˜ํ™˜
36+
if (!root) return 0;
37+
38+
// ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์™ผ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด๋ฅผ ๊ณ„์‚ฐ
39+
let left = maxDepth(root.left);
40+
// ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด๋ฅผ ๊ณ„์‚ฐ
41+
let right = maxDepth(root.right);
42+
43+
// ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์™ผ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด์™€ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด ์ค‘ ๋” ํฐ ๊ฐ’์„ ๋ฐ˜ํ™˜
44+
// ๋ฃจํŠธ ๋…ธ๋“œ์˜ ์™ผ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด์™€ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ์˜ ์ตœ๋Œ€ ๊นŠ์ด ์ค‘ ๋” ํฐ ๊ฐ’์— 1์„ ๋”ํ•˜์—ฌ ๋ฐ˜ํ™˜
45+
return Math.max(left, right) + 1;
46+
};

0 commit comments

Comments
ย (0)