Questions to common interview algorithms or problems asked.
Comment the code as much as necessary, but better try to write code that has lower noise and easy to understand so others can find it useful and learning.
break the problem down into individual components which can be done
Python Gist to see it in action