Patterns Sources https://hackernoon.com/14-patterns-to-ace-any-coding-interview-question-c5bb3357f6ed