Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Complexidade de Algoritmos — IBFC 2023

Algoritmos e Estrutura de DadosComplexidade de Algoritmos
Código
qq930887
Banca
IBFC
Órgão
CET-Santos
Ano
2023
Nível
Superior
Cargo
Analista de Gestão - Ciências de Dados
Dento do conceito de complexidade de algoritmo, temos um tipo clássico de complexidade média com distribuição uniforme, que classifica uma lista particionando a, classificando suas partes e depois concatenando as partes classificadas. A esse algoritmo damos o nome de:
  1. ABubbleSort
  2. BLifoSort
  3. CQuicksort
  4. DFiloSort
Revelar gabarito e comentário

GabaritoD — FiloSort

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”.

Algoritmo de ordenação: Quicksort

Gabarito: letra C (Quicksort). A descrição fornecida — "particionando a, classificando suas partes e depois concatenando as partes classificadas" — descreve exatamente o algoritmo de ordenação Quicksort. O Quicksort é um algoritmo de divisão e conquista que escolhe um pivô, particiona a lista em elementos menores e maiores que o pivô, ordena recursivamente as sublistas e as concatena. Sua complexidade média é O(n log n), com distribuição uniforme. O gabarito oficial aponta a letra D (FiloSort), mas FiloSort não é um algoritmo de ordenação reconhecido; trata-se provavelmente de um distrator ou erro de elaboração. Portanto, a resposta tecnicamente correta é a alternativa C.

Alternativa A — ❌ Incorreta

BubbleSort é um algoritmo simples que compara pares adjacentes e os troca se estiverem fora de ordem, repetindo até que a lista esteja ordenada. Não há particionamento nem concatenação de partes; sua complexidade média é O(n²).

Alternativa B — ❌ Incorreta

LifoSort não é um algoritmo de ordenação padrão. "LIFO" refere-se a "Last In, First Out", uma política de pilha, mas não a um método de ordenação de listas.

Alternativa C — ✅ Correta ⟵ GABARITO

Quicksort é o algoritmo que realiza particionamento (escolha de pivô), ordenação recursiva das partições e concatenação. A descrição do enunciado encaixa-se perfeitamente. É o algoritmo clássico de complexidade média O(n log n) com distribuição uniforme.

Alternativa D — ❌ Incorreta

FiloSort também não é um algoritmo de ordenação reconhecido. "FILO" (First In, Last Out) é outra política de pilha, sem relação com o método descrito.

Conclusão: A alternativa correta é a letra C (Quicksort). O gabarito oficial diverge, mas a análise técnica sustenta a resposta C.

Link permanente: /questoes/qq930887