Leet code problem 104
Difficulty: Easy —
Given
Cây nhị phân
Expectation
Chiều cao tối đa của cây nhị phân này
Solution
Recursive
Yêu cầu của bài toán có thể được hiểu là tìm số node tối đa đếm được trong một cây nhị phân bao gồm cả root node
Đặc điểm của cây nhị phân là luôn có 2 node con tương ứng với mỗi node cha
Quy luật này giúp ta thực hiện đếm số các node từ root
đến leaf
bằng phương pháp Recursive
- Từ
root node
tìm node max giữanode
bên trái vànode
bên phải - Lặp lại với
node
bên trái vànode
bên phải cho đến phần tử cuối cùng - Cộng thêm
1
vào kết quả trên để đếm cảroot node
Implementation
Code from github
1
2
3
4
5
6
7
8
public class L104_MaxDepthOfBinaryTree {
public int maxDepth(TreeNode treeNode) {
if (treeNode == null) {
return 0;
}
return Math.max(maxDepth(treeNode.left), maxDepth(treeNode.right)) + 1;
}
}