Data Structures and Algorithms: homework and notes