Code challenges to practice algorithms, data structures and analysis of asymptotic computational complexity for problems.