Algorithms and Data Structures I