Questão de Engenharia de Software — Metodologia de desenvolvimento de software — FUNDATEC 2023
Engenharia de Software›Metodologia de desenvolvimento de software
Código
qq890549
Banca
FUNDATEC
Órgão
CIGA-SC
Ano
2023
Nível
Médio
Cargo
Proramador
Um programador quer ordenar a lista [5, 4, 3]. Qual alternativa representa todas as situações dessa lista até a sua completa ordenação utilizando o método Bubble Sort?
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”.
Bubble Sort em [5, 4, 3]
Gabarito: Letra A. A sequência apresentada em A é a única que reflete corretamente todas as iterações do Bubble Sort, incluindo a passagem extra de verificação ao final. O algoritmo percorre a lista trocando pares adjacentes até ordená-la, e depois realiza uma última passada para confirmar que não há mais trocas.
Como o Bubble Sort funciona
O Bubble Sort compara elementos adjacentes e os troca se estiverem na ordem errada. Uma passagem percorre todo o vetor; ao final de cada passagem, o maior elemento "flutua" para sua posição correta. O processo se repete até que nenhuma troca seja necessária em uma passagem completa.
Rastreamento da ordenação de [5, 4, 3]
Passagem 1 (i=0):
Compara 5 e 4 → 5 > 4, troca → [4, 5, 3]
Compara 5 e 3 → 5 > 3, troca → [4, 3, 5]
Fim da passagem: maior elemento (5) está na última posição.
Passagem 2 (i=1):
Compara 4 e 3 → 4 > 3, troca → [3, 4, 5]
Compara 4 e 5 → 4 < 5, não troca.
Fim da passagem: segundo maior (4) está na penúltima posição.
Passagem 3 (i=2):
Compara 3 e 4 → 3 < 4, não troca.
Compara 4 e 5 → 4 < 5, não troca.
Nenhuma troca ocorre; a lista está ordenada. Contudo, o algoritmo só percebe que está ordenado após completar uma passagem inteira sem trocas. Portanto, o estado [3, 4, 5] aparece novamente no final (como resultado da passagem de verificação).
A sequência completa de estados é: [5, 4, 3] → [4, 5, 3] → [4, 3, 5] → [3, 4, 5] → [3, 4, 5].
Análise das alternativas
1Estado inicial[5, 4, 3]
2Passagem 1 — troca 5↔4[4, 5, 3]
3Passagem 1 — troca 5↔3[4, 3, 5]
4Passagem 2 — troca 4↔3[3, 4, 5]
5Passagem 3 — verificação[3, 4, 5]
LEVEL · soulevel.com.br
Alternativa A — ✅ Correta ⟵ GABARITO
Apresenta exatamente a sequência acima: [5,4,3], [4,5,3], [4,3,5], [3,4,5], [3,4,5]. Inclui a passagem extra de verificação.
Alternativa B — ❌ Incorreta
Inicia com [5,4,3] e depois troca direto para [4,3,5] (pulou o estado intermediário [4,5,3]). Também repete [3,4,5] duas vezes no final, mas a sequência está incorreta.
Alternativa C — ❌ Incorreta
Após [4,5,3], repete [4,5,3] indevidamente, sugerindo que o algoritmo não progrediu. A sequência correta seria [4,3,5] após a segunda troca.
Alternativa D — ❌ Incorreta
Termina após [3,4,5] sem a passagem de verificação. O Bubble Sort só para após percorrer toda a lista sem trocas, então o estado final deve aparecer duas vezes.
Alternativa E — ❌ Incorreta
Idem à D: pula o estado [4,5,3] e não repete [3,4,5] no final.
NÃO CAIA NESSA!
A banca tenta confundir omitindo a repetição do estado ordenado (passagem extra). Muitos candidatos param a sequência assim que a lista fica ordenada, esquecendo que o algoritmo precisa percorrer novamente para confirmar. Lembre-se: o Bubble Sort só termina após uma passagem completa sem trocas.