Este repositório disponibiliza diversos algoritmos e estruturas de dados clássicos em Ciência da Computação, bem como alguns problemas extras que são encontrados com frequência em desafios de programação.
Com o objetivo de alcançar uma abrangência maior e encorajar mais pessoas a contribuir com o projeto, os algoritmos são disponibilizados nas seguintes linguagens: C, C++, Java, Python, Go, Ruby, Javascript, Swift, Rust, Scala e Kotlin.
| Estruturas de Dados |
|
|
|
|
|
|
|
|
|
|
|
| Árvore Binária |
|
|
|
|
|
|
|
|
|
|
|
| Árvore Binária de Busca |
|
|
|
|
|
|
|
|
|
|
|
| Deque |
|
|
|
|
|
|
|
|
|
|
|
| Fila |
|
|
|
|
|
|
|
|
|
|
|
| Fila Encadeada Dinâmica |
|
|
|
|
|
|
|
|
|
|
|
| Grafo |
|
|
|
|
|
|
|
|
|
|
|
| Lista Circular Ligada |
|
|
|
|
|
|
|
|
|
|
|
| Lista Encadeada |
|
|
|
|
|
|
|
|
|
|
|
| Lista Duplamente Encadeada |
|
|
|
|
|
|
|
|
|
|
|
| Lista Ligada Não Ordenada |
|
|
|
|
|
|
|
|
|
|
|
| Lista Sequencial Ordenada |
|
|
|
|
|
|
|
|
|
|
|
| Pilha |
|
|
|
|
|
|
|
|
|
|
|
| Pilha Ligada Dinâmica |
|
|
|
|
|
|
|
|
|
|
|
| Hash Table |
|
|
|
|
|
|
|
|
|
|
|
| Algoritmo de Ordenação |
|
|
|
|
|
|
|
|
|
|
|
| Bogo Sort |
|
|
|
|
|
|
|
|
|
|
|
| Bubble Sort |
|
|
|
|
|
|
|
|
|
|
|
| Bucket Sort |
|
|
|
|
|
|
|
|
|
|
|
| Cocktail Sort |
|
|
|
|
|
|
|
|
|
|
|
| Comb Sort |
|
|
|
|
|
|
|
|
|
|
|
| Counting Sort |
|
|
|
|
|
|
|
|
|
|
|
| Gnome Sort |
|
|
|
|
|
|
|
|
|
|
|
| Heapsort |
|
|
|
|
|
|
|
|
|
|
|
| Insertion Sort |
|
|
|
|
|
|
|
|
|
|
|
| Merge Sort |
|
|
|
|
|
|
|
|
|
|
|
| Quicksort |
|
|
|
|
|
|
|
|
|
|
|
| Radix Sort |
|
|
|
|
|
|
|
|
|
|
|
| Selection Sort |
|
|
|
|
|
|
|
|
|
|
|
| Shell Sort |
|
|
|
|
|
|
|
|
|
|
|
| Timsort |
|
|
|
|
|
|
|
|
|
|
|
| Extra |
|
|
|
|
|
|
|
|
|
|
|
| Lista com 2 Pilhas |
|
|
|
|
|
|
|
|
|
|
|
| Soma de 2 Números |
|
|
|
|
|
|
|
|
|
|
|
| Palíndromo |
|
|
|
|
|
|
|
|
|
|
|
| Calculo do PI (Leibniz) |
|
|
|
|
|
|
|
|
|
|
|
| Busca em Labirinto |
|
|
|
|
|
|
|
|
|
|
|
Fique à vontade para contribuir com o projeto, toda contribuição é bem vinda. 😁
Se você tem dúvidas de como contribuir, dê uma olhada no arquivo CONTRIBUTING.