[
tree
bfs
dfs
recursion
]
BinarySearch 0132 Height Balanced Tree
Problem statement
https://binarysearch.com/problems/Height-Balanced-Tree/
Solution
Equal to Leetcode 0110. Balanced Binary Tree
Complexity
It is O(n)
for time and O(h)
for space.
Code
class Solution:
def solve(self, root):
self.Bal = True
def dfs(node):
if not node: return 0
lft, rgh = dfs(node.left), dfs(node.right)
if abs(lft - rgh) > 1: self.Bal = False
return max(lft, rgh) + 1
dfs(root)
return self.Bal