This document contains an exam for a class on Advanced Data Structures and Algorithms. It lists 8 questions that students can choose 5 of to answer. The questions cover topics like classes and objects in C++, inheritance, exception handling, data structures like trees, heaps, and hash tables, and algorithms like sorting, searching trees, minimum spanning trees, and the traveling salesman problem. Students have 3 hours to answer 5 of the 8 questions, which range from coding exercises to explanations of concepts.