Minha intenção com esse repo não é explicar o algoritmo ou pra que ele serve, visto que tem diversas fontes disponiveis na internet que fazem essa função com eximio, pretendo somente cumprir o papel de explicar linha a linha a lógica por trás de cada um
Eu utilizei TypeScript para resolução de todos eles pois é uma das linguagens mais acessíveis e populares atualmente, e ao contrario do JavaScript da pra ter uma noção melhor do que está acontecendo em cada passo do problema, além disso, todas as tipagens mais complicadas eu deixei no global.d.ts, se quiser rodar esse repo na sua maquina, é só copiar esse repo, baixar ele e executar npm install
Referências :
https://frontendmasters.com/courses/algorithms/
https://www.amazon.com.br/Entendendo-Algoritmos-Ilustrado-Programadores-Curiosos/dp/8575225634