CC3001 - Algorithms and Data Structures