Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — FCC 2017

Algoritmos e Estrutura de DadosAlgoritmos
Código
fc036523
Banca
FCC
Órgão
DPE-RS
Ano
2017
Nível
Superior
Cargo
Analista - Desenvolvimento de Sistemas
Um Analista, estudando a complexidade de algoritmos de busca linear (ou sequencial), concluiu corretamente que no pior caso, considerando um vetor de n elementos, este tipo de algoritmo tem complexidade
  1. AO(n).
  2. BO(log₂n-1).
  3. CO(√n).
  4. DO(log2n).
  5. EO(log₂n² ).
Revelar gabarito e comentário

GabaritoA — O(n).

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Complexidade de algoritmos de busca linear

Gabarito: letra A. A busca linear (sequencial) percorre cada elemento do vetor até encontrar o valor desejado ou até o final. No pior caso, o elemento está na última posição ou não está presente, exigindo que todos os n elementos sejam verificados. Por isso, sua complexidade é O(n).

A banca testa a diferença entre a busca linear e a busca binária. Enquanto a linear é O(n), a binária, que exige vetor ordenado, é O(log₂ n). Os distratores B, D e E remetem a complexidades logarítmicas, e o distrator C (√n) não corresponde a nenhum algoritmo clássico de busca em vetores.

  1. 1Início do vetor
  2. 2Compara elemento
  3. 3Não encontrou?
  4. 4Avança ao próximo
  5. 5Fim do vetor
  6. 6n comparações = O(n)
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

A complexidade O(n) reflete exatamente o pior caso da busca linear: percorrer todos os n elementos. É a resposta esperada.

Alternativa B — ❌ Incorreta

O(log₂ n-1) é típico da busca binária (ou de algoritmos de divisão e conquista), não da busca linear. O termo "-1" não altera a ordem assintótica, mas a referência logarítmica já invalida a alternativa.

Alternativa C — ❌ Incorreta

O(√n) não corresponde à complexidade de algoritmos clássicos de busca em vetores. Esse valor aparece em certos algoritmos de estrutura de dados, como busca em tabelas hash com colisões? Não é o caso da busca linear.

Alternativa D — ❌ Incorreta

O(log₂ n) é a complexidade da busca binária (ou de algoritmos como pesquisa em árvore binária balanceada). A banca tenta confundir o candidato, trocando o algoritmo linear pelo binário.

Alternativa E — ❌ Incorreta

O(log₂ n²) = O(2 log₂ n) = O(log₂ n) — novamente, complexidade logarítmica. A busca linear não se enquadra aqui.

NÃO CAIA NESSA!

A banca troca a complexidade da busca linear (O(n)) pela da busca binária (O(log n)). O candidato que confunde os dois algoritmos cai nos distratores B, D ou E. Lembre-se: a busca linear não exige vetor ordenado e tem custo linear; a binária exige ordenação e custo logarítmico.

Gabarito: letra A.

Link permanente: /questoes/fc036523