Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — COSEAC 2019

Algoritmos e Estrutura de DadosAlgoritmos
Código
qq437977
Banca
COSEAC
Órgão
UFF
Ano
2019
Nível
Superior
Cargo
Analista de Tecnologia da Informação
Em relação aos algoritmos de ordenação, avalie se são verdadeiras (V) ou falsas (F) as afirmativas a seguir:I O algoritmo quicksort é muito eficiente quando temos uma quantidade pequena de elementos a ordenar.II O algoritmo shell utiliza intensamente a inserção direta.III No algoritmo bubble sort o número de variáveis envolvidas é pequeno.As afirmativas I, II e III são, respectivamente:
  1. AV, F e V.
  2. BF, V e V.
  3. CV, F e F.
  4. DF, F e V.
  5. EV, V e V.
Revelar gabarito e comentário

GabaritoB — F, V e V.

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

Algoritmos de Ordenação

Gabarito: letra B. A sequência correta é F, V, V. A afirmativa I é falsa (quicksort não é eficiente para poucos elementos); a II é verdadeira (shell sort utiliza inserção direta); a III é verdadeira (bubble sort usa poucas variáveis). As demais alternativas contêm pelo menos um erro na valoração das afirmativas.

Análise das Afirmativas

Afirmativa I — ❌ Falsa O quicksort tem complexidade média O(n log n), mas seu desempenho para conjuntos muito pequenos é prejudicado pelo overhead de recursão e partição. Algoritmos como o insertion sort são mais eficientes nesses casos. Portanto, a afirmação de que o quicksort é "muito eficiente" para pequenas quantidades está incorreta.

Afirmativa II — ✅ Verdadeira O shell sort é uma generalização do insertion sort. Ele ordena elementos distantes e, quando o incremento atinge 1, realiza uma inserção direta completa. Assim, o shell sort "utiliza intensamente a inserção direta" – a afirmação está correta.

Afirmativa III — ✅ Verdadeira O bubble sort requer apenas algumas variáveis: contadores para os laços (i, j), uma variável temporária para realizar a troca e, eventualmente, uma flag para detectar se houve troca. O número de variáveis é realmente pequeno, confirmando a veracidade da afirmação.

Análise das Alternativas

Afirmativa

Julgamento Correto

Motivo

I – Quicksort é muito eficiente para poucos elementos

Falsa

O quicksort tem overhead de recursão e partição; para conjuntos pequenos, algoritmos como insertion sort são mais eficientes.

II – Shell sort utiliza intensamente a inserção direta

Verdadeira

O shell sort generaliza o insertion sort, realizando inserção direta quando o incremento atinge 1.

III – Bubble sort tem número pequeno de variáveis

Verdadeira

Utiliza apenas contadores (i, j), variável temporária para troca e, opcionalmente, uma flag.

Algoritmos de ordenação
  • 1Quicksort
    • Ineficiente para poucos elementos
    • Overhead de recursão e partição
  • 2Shell sort
    • Usa inserção direta intensamente
    • Generalização do insertion sort
  • 3Bubble sort
    • Poucas variáveis (i, j, temp, flag)
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta

Sequência V, F, V. Erro: considera a afirmativa I como verdadeira, quando ela é falsa. A característica do quicksort em relação a pequenas entradas é mal compreendida.

Alternativa B — ✅ Correta ⟵ GABARITO

Sequência F, V, V. Corresponde exatamente ao julgamento correto: I falsa, II verdadeira, III verdadeira.

Alternativa C — ❌ Incorreta

Sequência V, F, F. Erro duplo: julga I como verdadeira (deveria ser falsa) e III como falsa (deveria ser verdadeira). O bubble sort realmente utiliza poucas variáveis, contrariando a leitura da alternativa.

Alternativa D — ❌ Incorreta

Sequência F, F, V. Erro: afirma que II é falsa, mas o shell sort emprega a inserção direta de forma intensa, tornando a afirmativa verdadeira.

Alternativa E — ❌ Incorreta

Sequência V, V, V. Erro: classifica I como verdadeira, quando na realidade é falsa. O quicksort não é a melhor escolha para ordenar um número pequeno de elementos.

NÃO CAIA NESSA!

A banca explora a crença comum de que o quicksort é sempre o melhor algoritmo. Na verdade, para conjuntos pequenos (tipicamente abaixo de 10–20 elementos), o insertion sort é mais rápido devido ao menor overhead. Fique atento: o quicksort se destaca para grandes volumes de dados.

Gabarito: letra B

Link permanente: /questoes/qq437977