Visualizers

Sorting Algorithm Visualizer

See how classic sorting algorithms work, one comparison and swap at a time.

  • Runs in your browser
  • Instant results
  • Free, no sign-up
Loading the tool…

How to use the Sorting Algorithm Visualizer

  1. Choose an algorithm, the number of elements and the starting data.
  2. Press Play, or Step to go one operation at a time.
  3. Compare comparisons, swaps and the complexity table between algorithms.

Frequently asked questions

Which sorting algorithm is fastest?

On random data, quick, merge and heap sort (O(n log n)) beat the O(n²) sorts. Insertion sort wins on nearly sorted data.

What does stable mean?

A stable sort keeps equal values in their original order, which matters when sorting records by one field.

Why try different starting data?

Some algorithms behave very differently on sorted, reversed or repetitive input; quick sort's worst case shows on sorted data.

Pratique Python com desafios de código

Resolva problemas práticos direto neste editor: rode os testes de exemplo, envie sua solução e receba uma revisão de código por IA.

Todos os desafios de Python
Fácil

Average of Three

Average three whole numbers.

Você vai aprender AritméticaDivisão
BeginnerLearning-pathVariables
Fácil

Rectangle Perimeter

Compute the perimeter of a rectangle from its sides.

Você vai aprender AritméticaValores de retorno
BeginnerLearning-pathVariables
Médio

Uma geração de um algoritmo genético

Gere a próxima geração de strings de bits com seleção por torneio, cruzamento de um ponto e mutação.

Você vai aprender Algoritmos genéticosBusca evolutiva
OptimizationSimulationai
Ainda sem soluções
Fácil

Bandido multibraço epsilon-greedy

Equilibre exploração e aproveitamento em um bandido multibraço com seleção de ações epsilon-greedy.

Você vai aprender Explorar ou aproveitarBandidos
Aprendizado por reforçoaiaprendizado de máquina
Ainda sem soluções
Fácil

Distribuição de estados de uma cadeia de Markov

Propague uma distribuição de probabilidade pela matriz de transição de uma cadeia de Markov por um número de passos.

Você vai aprender Cadeias de MarkovProbabilidade
Simulationaimath
Ainda sem soluções
Médio

Iteração de valor

Calcule quanto vale cada estado de um processo de decisão de Markov aplicando repetidamente a atualização de otimalidade de Bellman.

Você vai aprender Equação de BellmanMDPs
Aprendizado por reforçoaiaprendizado de máquina
Ainda sem soluções
Médio

Atualizações de Q-learning

Aplique a atualização do Q-learning a um fluxo de experiências e veja as recompensas voltarem para estados anteriores.

Você vai aprender Q-learningRecompensas descontadas
Aprendizado por reforçoaiaprendizado de máquina
Ainda sem soluções
Médio

Poda alfa-beta

Avalie uma árvore de jogo com minimax e poda alfa-beta, e conte quantas folhas a busca realmente examina.

Você vai aprender Poda alfa-betaBusca em jogos
RecursionTreesai
Ainda sem soluções
Médio

Jogo da velha com minimax

Escolha a jogada perfeita no jogo da velha explorando toda a árvore de jogo com minimax.

Você vai aprender MinimaxÁrvores de jogo
Recursionai
Ainda sem soluções
Médio

Busca A* em uma grade ponderada

Encontre o caminho mais barato por uma grade de custos de terreno com A*, o algoritmo de busca por trás da navegação em jogos e robôs.

Você vai aprender Busca A*Heurísticas
GraphsGridsShortest-pathai
Ainda sem soluções
Médio

Amostragem com temperatura e top-k

Escolha o próximo token como um modelo de linguagem: mantenha os k maiores logits, aplique a temperatura e amostre.

Você vai aprender Geração de textoAmostragem
aiaprendizado de máquina
Ainda sem soluções
Difícil

Autoatenção multi-cabeça

Projete a entrada em consultas, chaves e valores, execute a atenção em várias cabeças em paralelo e combine-as.

Você vai aprender Atenção multi-cabeçaProjeções matriciais
aiaprendizado de máquina
Ainda sem soluções