Skip to content

Este repositório no GitHub é dedicado ao estudo e implementação de algoritmos e estruturas de dados.

Notifications You must be signed in to change notification settings

Robson-Carvalho/computer-engineering

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Estudos de Algoritmos e Estruturas de Dados

Este repositório é dedicado ao estudo e implementação de algoritmos e estruturas de dados. Ele abrange uma variedade de tópicos essenciais para desenvolvedores de software, proporcionando um recurso valioso para a compreensão e aplicação prática de conceitos fundamentais em ciência da computação.

Tópicos

  1. Big(O): Introdução ao conceito de complexidade assintótica.

  2. Arrays (Vetores): Implementação e manipulação de arrays.

  3. Hashing / Map: Exploração de estruturas de dados baseadas em hash.

  4. Two Pointers (Dois Ponteiros): Técnica para otimizar a busca em determinados problemas.

  5. Stack (Pilhas): Implementação e aplicação de pilhas.

  6. Binary Search (Busca Binária): Técnica de busca eficiente em conjuntos ordenados.

  7. Sliding Window: Técnica para otimizar a manipulação de subconjuntos em sequências.

  8. Quick Sort: Algoritmo de ordenação eficiente.

  9. Recursão: Exploração de algoritmos recursivos.

  10. Linked List (Lista Ligada): Implementação e manipulação de listas ligadas.

  11. Doubly Linked List (Lista Duplamente Ligada): Estrutura de lista ligada com ponteiros para frente e para trás.

  12. DEQUE (Double Ended Queue): Implementação e aplicação de filas de dupla extremidade.

  13. Tree (Árvore): Implementação e manipulação de árvores.

  14. Trie: Estrutura de dados especializada para armazenar um conjunto dinâmico ou associativo onde as chaves são geralmente strings.

  15. Backtracking: Técnica para encontrar todas as soluções para um problema através da exploração sistemática.

  16. Heap/Priority Queue: Estrutura de dados para manter elementos com prioridades.

  17. Intervals: Técnica para manipulação de intervalos em conjuntos ordenados.

  18. Graph (Grafos): Implementação e manipulação de grafos.

  19. Dijkstra Algorithm: Algoritmo para encontrar o caminho mais curto em um grafo com pesos não negativos.

  20. A* Algorithm: Algoritmo de busca heurística eficiente.

  21. Dynamic Programming: Técnica de otimização de problemas dividindo-os em subproblemas sobrepostos.

  22. Kadane's Algorithm: Algoritmo eficiente para encontrar a maior soma de subconjunto contíguo em uma sequência numérica.

  23. Greedy (Algoritmos Gulosos): Estratégia de resolução de problemas que faz a escolha localmente ótima em cada estágio com a esperança de encontrar uma solução global ótima.

  24. Bit Manipulation: Manipulação de bits para otimização de operações.

  25. Math & Geometry (Matemática e Geometria): Tópicos adicionais relacionados a matemática e geometria.

  26. Tortoise Hare Algorithm: Algoritmo envolvendo duas variáveis que percorrem uma sequência com diferentes velocidades.

Este repositório proporciona uma abordagem prática e abrangente para o aprendizado e aplicação de algoritmos e estruturas de dados, tornando-se uma valiosa fonte de referência para estudantes e profissionais de desenvolvimento de software.

Tópicos estudados

Contribuindo

Se você deseja contribuir para este projeto, siga estas etapas:

Faça um fork do repositório. Crie uma branch para suas alterações:

git checkout -b feature/nova-funcionalidade.

Faça as alterações desejadas e commit:

git commit -m 'Adiciona nova funcionalidade'.

Push para a branch:

git push origin feature/nova-funcionalidade.

Abra um pull request descrevendo suas alterações.

Licença

Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE. para detalhes.

Autor

Foto do Iuri Silva no GitHub
Robson Carvalho

About

Este repositório no GitHub é dedicado ao estudo e implementação de algoritmos e estruturas de dados.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published