https://dmtrata.medium.com/five-must-know-javascript-algorithms-for-front-end-developers-with-hands-on-examples-7d5210edf3c3