Practice Overview

These problems take the ideas and techniques you learned in the chapter and apply them to new contexts. It is best to attempt these after reading the chapter and feeling confident with the material. For each problem, write your own solution before reading the provided one. Give yourself more time to work through the challenge.

You can download the accompanying code for these practice problems: starter and solution.

  1. Problem: Validating an AVL Tree
  2. Solution: Two Separate Checks
  3. Solution: One Post-Order Pass
  4. Problem: Balancing a Binary Search Tree
  5. Solution: Choosing the Middle as the Root
  6. Solution: Flatten, Then Rebuild