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 nodetìm node max giữanodebên trái vànodebên phải - Lặp lại với
nodebên trái vànodebên phải cho đến phần tử cuối cùng - Cộng thêm
1và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;
}
}