Programming homeworks for COMP 251 - Algorithms and Data Structures