[Stanford] Algorithms: Design and Analysis, Part 2