Módulo 12 - Quanto custa: eficiência e a noção de Big-O

A notação Big-O: o vocabulário do custo

8 min de leitura · por Cesar Gargiulo, revisado pela equipe ValorFinal e GuardiaSec · Atualizado em 08/07/2026

O que você vai aprender

  • Entender o Big-O como um nome curto para a forma de crescimento.
  • Ler O(1), O(n), O(n ao quadrado) e O(log n) e o que cada um significa.
  • Associar algoritmos conhecidos à sua notação Big-O.
  • Usar o vocabulário Big-O para comparar algoritmos.

Só um nome para a forma

Você já entendeu o conceito difícil, as formas de crescimento. O Big-O é só o vocabulário para nomeá-las, e ele intimida mais pela aparência do que pela ideia. A notação é a letra O maiúscula seguida de uma expressão entre parênteses que descreve o crescimento, usando a letra n para o tamanho dos dados. Custo constante, que não muda com o tamanho, é O(1), lê-se ó de um. Custo linear, que dobra ao dobrar os dados, é O(n), ó de n. Custo quadrático é O(n ao quadrado). E o logarítmico é O(log n). Só isso. Quando um programador diz que um algoritmo é ó de n, ele está dizendo que o custo cresce em linha reta com o tamanho, exatamente a forma linear que você já conhece. O Big-O não acrescenta conceito novo; ele dá um nome curto e universal ao que você já entende.

Big-OFormaAo dobrar os dadosExemplo do curso
O(1)Constantecusto não mudaBuscar no dicionário pela chave
O(log n)Logarítmicocusto mais 1 passoBusca binária
O(n)Linearcusto dobraBusca linear, somar uma lista
O(n ao quadrado)Quadráticocusto quadruplicaOrdenação da bolha, laços aninhados

O Big-O nomeia cada forma de crescimento. As quatro linhas cobrem quase tudo que você encontra no dia a dia.

Lendo o Big-O de um algoritmo

Descobrir o Big-O de um algoritmo é justamente o que você já treinou: contar os passos em função do tamanho e ver a forma. Um laço que percorre a lista uma vez é O(n): n voltas. Dois laços aninhados sobre a mesma lista são O(n ao quadrado): n vezes n. Um acesso direto por posição ou por chave é O(1): um passo, não importa o tamanho. Cortar pela metade a cada passo é O(log n). Uma regra prática ajuda: quando um algoritmo tem partes com custos diferentes, o Big-O fica com a maior, porque ela domina no crescimento. Um algoritmo que faz um passo constante e depois um laço linear é O(n), porque o laço domina o passo único quando os dados crescem. O Big-O sempre reporta o termo que mais cresce, ignorando o resto, fiel à ideia de que a forma vence o detalhe.

🎮 Jogo da aula

Qual o Big-O?

Para cada algoritmo, escolha se ele é O(n) linear ou O(n ao quadrado) quadrático.

O Big-O na conversa real

Saber ler Big-O muda a forma como você entende discussões técnicas, tutoriais e documentação. Quando alguém diz que uma operação de dicionário é O(1), você entende na hora: é instantânea, não importa o tamanho. Quando um artigo alerta que um trecho é O(n ao quadrado), você sabe que ele vai travar com dados grandes. Quando a documentação de uma linguagem diz que sua ordenação é O(n log n), você reconhece que é bem mais rápida que a bolha, ainda que não seja instantânea. O Big-O virou a linguagem franca da eficiência, e falar essa língua te coloca em pé de igualdade em qualquer conversa sobre desempenho. Você não precisa dominar a matemática por trás dele para usá-lo bem no dia a dia; basta reconhecer as quatro ou cinco formas comuns e o que cada uma significa na prática, que é exatamente o que você acabou de aprender.

Teste rápido

Um programador diz que a busca num dicionário pela chave é O(1). O que isso significa?

Perguntas frequentes

O que é a notação Big-O?
É um vocabulário curto e universal para a forma como o custo de um algoritmo cresce com o tamanho dos dados. O(1) é constante, O(n) é linear, O(n ao quadrado) é quadrático, O(log n) é logarítmico. O n representa o tamanho da entrada. O Big-O não é um conceito novo; é o nome das formas de crescimento que você já entende.
O que significa o n no Big-O?
O n representa o tamanho dos dados de entrada: quantos itens tem a lista, quantos caracteres tem o texto. O Big-O descreve o custo em função desse n. Por exemplo, O(n) quer dizer que o custo cresce em linha reta com o número de itens: o dobro de itens, o dobro de trabalho.
Como descubro o Big-O de um algoritmo?
Contando os passos em função do tamanho e vendo a forma. Um laço simples é O(n); dois aninhados são O(n ao quadrado); acesso direto é O(1); cortar pela metade é O(log n). Quando há partes com custos diferentes, o Big-O fica com a maior, porque ela domina quando os dados crescem.
O que quer dizer O(1) exatamente?
Custo constante: a operação faz um trabalho fixo, que não muda com o tamanho dos dados. Buscar por chave num dicionário é O(1) porque custa quase o mesmo com dez ou dez milhões de itens. O 1 não é um tempo em segundos; é o nome da forma constante de crescimento.
Preciso saber a matemática por trás do Big-O?
Para o dia a dia, não. Basta reconhecer as quatro ou cinco formas comuns (O(1), O(log n), O(n), O(n log n), O(n ao quadrado)) e o que cada uma significa na prática. A matemática formal existe e é útil em estudos avançados, mas usar o Big-O para comparar algoritmos e ler documentação não exige ela.
O que é O(n log n) que aparece nas ordenações rápidas?
É uma forma entre a linear e a quadrática, bem mais próxima da linear. As ordenações rápidas costumam ser O(n log n), o que as torna muito melhores que a bolha, que é O(n ao quadrado). Para um milhão de itens, a diferença entre O(n log n) e O(n ao quadrado) é a diferença entre um instante e horas.

Fontes

Seu progresso fica salvo neste aparelho. Assinantes sincronizam entre os aparelhos.