Basic Data Structures and Algorithms