Algorithms, Part 1, Programming Assignments. Coursera