small assignments to practice algorithms and data structures