Busca Linear (Linear Search)
Definição
A Busca Linear (Linear Search) é um algoritmo simples que percorre uma coleção de elementos do início ao fim, comparando cada item com o valor buscado até encontrar uma correspondência ou chegar ao final da estrutura.
É útil quando a coleção não está ordenada ou quando queremos simplicidade acima de performance.
Por que usar
A busca linear é ideal quando:
- Os dados estão em qualquer ordem (não ordenados);
- O conjunto de dados é pequeno ou de tamanho imprevisível;
- Precisamos de uma solução rápida e fácil de implementar;
- Não há necessidade de otimizações com estruturas auxiliares.
Complexidade
- Melhor caso: O(1), se o elemento estiver logo no início;
- Pior caso: O(n), se o elemento estiver no final ou não estiver presente;
- Espaço adicional: O(1), não requer memória extra.
Exemplo prático (Python)
def busca_linear(lista, alvo):
for i in range(len(lista)):
if lista[i] == alvo:
return i # índice encontrado
return -1 # não encontrado
numeros = [4, 10, 7, 2, 8]
posicao = busca_linear(numeros, 7)
if posicao != -1:
print(f"Encontrado na posição: {posicao}")
else:
print("Valor não encontrado.")
Saída
Encontrado na posição: 2