Practice Discrete Math

Algorithms / Tree Height Balance

Least You Need to Know: Tree Height, Balance, and Diameter Intuition

Bottom-up tree questions ask each subtree to return a small summary such as its height, whether it is balanced, or the best path seen so far. The key interview move is to decide what summary the parent needs from each child.

The least you need to know

Key notation

height(v) length of the longest downward path from node v
diameter length of the longest path between any two tree nodes
balanced every node has child heights differing by at most one

Tiny worked example

  • To compute whether a binary tree is balanced, first ask each child subtree for its height.
  • At the parent, compare the left and right heights.
  • The parent is locally balanced when the difference is at most one and both child subtrees were balanced.
  • That is a classic example of returning a small summary upward from each recursive call.

Common mistakes

How to recognize this kind of problem

Next recommended lesson

Continue through this topic with Least You Need to Know: Tree Traversals and Recursive Calls.

Least You Need to Know: Tree Traversals and Recursive Calls

Related lessons

Keep going with nearby lessons in the same topic.

More ways to explore

Start practice