Algoritmos em Rust
40+ algoritmos clássicos implementados em Rust — com explicações visuais, análise Big-O e código completo.
Domine algoritmos fundamentais usando Rust. Cada página inclui explicação do conceito, diagrama visual do funcionamento, análise de complexidade (tempo e espaço), implementação completa em Rust idiomático e exercícios práticos.
Categorias
Ordenação & Busca
Bubble Sort, Merge Sort, Quick Sort, Heap Sort, Binary Search e mais — os algoritmos fundamentais.
Grafos
BFS, DFS, Dijkstra, Bellman-Ford, Kruskal, Prim, ordenação topológica e caminhos mínimos.
Programação Dinâmica
Mochila, LCS, distância de edição, troco de moedas, subsequência crescente e mais clássicos de DP.
Algoritmos de Strings
KMP, Rabin-Karp, Trie, Aho-Corasick, suffix array, palíndromos e busca de padrões.
Matemática, Árvores & Avançado
BST, AVL, hash table, Union-Find, Segment Tree, crivo de Eratóstenes e exponenciação rápida.
Todos os Algoritmos
Distancia de Levenshtein em Rust
A Distancia de Levenshtein (ou distancia de edicao) mede o numero minimo de operacoes de edicao necessarias para transformar uma string em outra. As operacoes …
Hashing de Strings em Rust
O hashing de strings e uma tecnica fundamental que permite comparar strings e substrings em tempo constante O(1) apos um pre-processamento linear. Em vez de …
Árvore Binária de Busca (BST) em Rust
A Árvore Binária de Busca (Binary Search Tree, ou BST) é uma das estruturas de dados mais fundamentais da ciência da computação. Ela organiza elementos de forma …
Árvore AVL em Rust
A Árvore AVL (nomeada em homenagem aos inventores Adelson-Velsky e Landis, 1962) é uma árvore binária de busca auto-balanceada. A diferença fundamental em …
Tabela Hash do Zero em Rust
A Tabela Hash (Hash Table) é uma das estruturas de dados mais utilizadas na programação, oferecendo acesso em tempo O(1) amortizado para inserção, busca e …
Union-Find (Disjoint Set) em Rust
O Union-Find (também chamado de Disjoint Set Union, ou DSU) é uma estrutura de dados que gerencia uma coleção de conjuntos disjuntos (sem elementos em comum). …
Segment Tree em Rust
A Segment Tree (Árvore de Segmentos) é uma estrutura de dados que permite realizar consultas de intervalo (range queries) e atualizações de forma eficiente. …
Crivo de Eratóstenes em Rust
O Crivo de Eratóstenes e um dos algoritmos mais antigos e elegantes da matemática, criado pelo matemático grego Eratóstenes por volta de 240 a.C. Ele encontra …
Algoritmo de Euclides (MDC) em Rust
O Algoritmo de Euclides é um dos algoritmos mais antigos que ainda é amplamente utilizado, datando dos Elementos de Euclides por volta de 300 a.C. Ele calcula o …
Exponenciação Rápida em Rust
A Exponenciação Rápida (também chamada de exponenciação por quadratura ou binary exponentiation) é uma técnica que calcula a^n em apenas O(log n) …