Stanford Algorithms Week 3 completed