Ruby Data Structures and Algorithms