Algoritmos em Rust

40+ algoritmos implementados em Rust com explicações visuais, análise de complexidade e código completo. Ordenação, grafos, DP, strings e mais.

Algoritmos

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

rust

Algoritmo de Dijkstra em Rust

O algoritmo de Dijkstra é o método mais eficiente para encontrar o caminho mais curto de um vértice de origem a todos os outros vértices em um grafo com pesos …

rust

Algoritmo de Bellman-Ford em Rust

O algoritmo de Bellman-Ford resolve o problema do caminho mais curto a partir de uma única fonte em grafos que podem conter arestas com peso negativo — uma …

rust

Algoritmo de Kruskal em Rust

O algoritmo de Kruskal encontra a Árvore Geradora Mínima (Minimum Spanning Tree, ou MST) de um grafo conectado e ponderado. A MST é um subconjunto de arestas …

rust

Algoritmo de Prim em Rust

O algoritmo de Prim é uma abordagem gulosa para encontrar a Árvore Geradora Mínima (MST) de um grafo conectado e ponderado. Diferente do Kruskal, que trabalha …

rust

Ordenação Topológica em Rust

A Ordenação Topológica (Topological Sort) é um algoritmo que organiza os vértices de um Grafo Acíclico Direcionado (DAG — Directed Acyclic Graph) em uma …

rust

Algoritmo de Floyd-Warshall em Rust

O algoritmo de Floyd-Warshall encontra o caminho mais curto entre todos os pares de vértices de um grafo ponderado em uma única execução. Diferente do Dijkstra …

programação dinâmica

Fibonacci com Programação Dinâmica

A sequência de Fibonacci é o ponto de partida clássico para aprender programação dinâmica (DP). Embora o problema em si seja simples — cada número é a soma dos …

programação dinâmica

Problema da Mochila (Knapsack) em Rust

O problema da mochila (Knapsack) é um dos problemas mais estudados em otimização combinatória e ciência da computação. Dado um conjunto de itens, cada um com …

programação dinâmica

Subsequência Comum Mais Longa (LCS)

A Subsequência Comum Mais Longa (LCS — Longest Common Subsequence) é um dos problemas clássicos de programação dinâmica sobre strings. Dadas duas sequências, …

programação dinâmica

Distância de Edição (Levenshtein) em Rust

A distância de edição (ou distância de Levenshtein) mede o número mínimo de operações necessárias para transformar uma string em outra. As operações permitidas …