Menu
Coddy logo textTech

Motivation

Lição 2 de 9 do curso Counting Sort - Série de DSA da Coddy.

O Counting Sort nunca compara dois elementos. Ele usa seus valores diretamente como índices em um array count, que é o que permite que ele seja executado em tempo linear.

Por que aprender o Counting Sort?

  • Tempo linear: ele é executado em O(n + k), onde n é o número de elementos e k é o intervalo de valores. Quando k é pequeno, isso supera O(n log n).
  • Estável (quando feito com cuidado): uma base para o Radix Sort, que encadeia várias passagens de counting-sort.
  • Uma ideia diferente: ordenar contando os valores em vez de compará-los.

A desvantagem: ele precisa de memória O(k) para o array count, por isso não é adequado quando o intervalo de valores é enorme (por exemplo, ordenar um punhado de números até um bilhão).

Experimente você mesmo

Esta lição não inclui um desafio de código.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Counting Sort - Série de DSA