Amazon interview question

Binary tree, graph search, dynamic programming, and system design