Practice implementing different algorithms and data structures