Desde que comecei a estudar programação, percebi que entender algoritmos e estruturas de dados é fundamental para qualquer desenvolvedor. Não se trata apenas de passar em entrevistas técnicas, mas de desenvolver um pensamento lógico que se aplica a qualquer problema. Foi com essa mentalidade que criei o DSA.lang — um catálogo pessoal de tudo o que venho estudando.
O Projeto
O DSA.lang é um repositório que cataloga cada algoritmo ou estrutura de dados aprendida, acompanhado de anotações sobre o funcionamento e a lógica aplicada. A ideia é que cada entrada contenha não apenas o código, mas também uma explicação clara de como e por que ele funciona.
O projeto é organizado em três grandes áreas:
- Algoritmos — implementações de algoritmos de ordenação, busca e outros;
- Estruturas de Dados — implementações de estruturas lineares e não-lineares;
- Exercícios — soluções de problemas de plataformas como LeetCode, HackerRank e similares.
Estrutura do Repositório
Cada algoritmo ou estrutura de dados segue um padrão de organização: uma pasta dedicada contendo implementações em múltiplas linguagens e um arquivo Markdown com explicações. Isso permite comparar como o mesmo conceito se comporta em diferentes ecossistemas.
Objetivo
Mais do que um repositório de código, o DSA.lang é uma ferramenta de estudo. Cada novo conceito aprendido é documentado e implementado, servindo como referência futura. É um projeto em constante evolução, que cresce junto com o meu aprendizado.