CMU 15-110: Principles of Computing
Trees and Graphs