Camila Duarte
EQUIPE
22/10/2026 • 04:01
Vamos falar um pouco sobre busca binária, que é um método eficiente para encontrar um elemento em uma lista ordenada. A busca funciona dividindo repetidamente o espaço de pesquisa pela metade até encontrar o elemento ou concluir que ele não está presente. No caso dessa questão, temos um array com os primeiros 64 números primos, que estão em ordem crescente, e queremos descobrir em quantos passos a busca binária vai tentar encontrar o número 51, que não está nesse array (pois 51 não é primo).
A busca binária examina o elemento do meio do array a cada passo. Se o número buscado for menor que o elemento do meio, continua buscando na metade esquerda; se for maior, na metade direita. Aqui, precisamos calcular o máximo de elementos examinados para concluir que 51 não está no array de 64 elementos.
Em geral, a busca binária em um array de tamanho n examina no máximo log2(n) + 1 elementos, pois a cada comparação reduz pela metade o tamanho do problema. Para n = 64, log2(64) = 6. Portanto, no pior caso, a busca binária examina no máximo 7 itens antes de concluir a ausência do elemento.
Assim, a resposta correta é 7, correspondendo à alternativa a).
A busca binária examina o elemento do meio do array a cada passo. Se o número buscado for menor que o elemento do meio, continua buscando na metade esquerda; se for maior, na metade direita. Aqui, precisamos calcular o máximo de elementos examinados para concluir que 51 não está no array de 64 elementos.
Em geral, a busca binária em um array de tamanho n examina no máximo log2(n) + 1 elementos, pois a cada comparação reduz pela metade o tamanho do problema. Para n = 64, log2(64) = 6. Portanto, no pior caso, a busca binária examina no máximo 7 itens antes de concluir a ausência do elemento.
Assim, a resposta correta é 7, correspondendo à alternativa a).