GeraProva GeraProva Provas com IA para professores do Brasil
Computação1ª sérieBNCC EM13CO03Difícil⏱ medio

Num algoritmo de ordenação que usa dois índices em laços aninhados para percorrer um vetor de N nomes, como a…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EM13CO03

Identificar o comportamento dos algoritmos no que diz respeito ao consumo de recursos como tempo de execução, espaço de memória e energia, entre outros.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Num algoritmo de ordenação que usa dois índices em laços aninhados para percorrer um vetor de N nomes, como a variável N influencia a complexidade temporal?

  1. A) O algoritmo se torna mais eficiente com aumento de N.
  2. B) A complexidade temporal cresce aproximadamente como o quadrado de N, ou seja O(N^2).
  3. C) A complexidade é linear, O(N), devido ao uso de dois índices.
  4. D) A complexidade não é afetada pela quantidade de nomes no vetor.
  5. E) Se N for pequeno, a complexidade se torna O(1).

✅ Resposta correta: alternativa B

Resolução passo a passo

  1. Um algoritmo de ordenação com dois laços aninhados percorre o vetor de N nomes: o laço externo executa cerca de N vezes e, para cada uma dessas vezes, o laço interno percorre até cerca de N elementos.
  2. Assim, o número total de comparações e trocas é aproximadamente N vezes N, isto é, N^2 (com constantes e termos menores que são desprezados na notação assintótica).
  3. Portanto, a complexidade temporal cresce aproximadamente com o quadrado de N, sendo representada por O(N^2). Essa é a alternativa B, que coincide com o gabarito oficial.
  4. A alternativa A está errada, pois o algoritmo não fica mais eficiente quando N aumenta; ao contrário, o tempo de execução cresce com N.
  5. A alternativa C está errada, pois dois laços aninhados não geram complexidade linear; o uso de dois índices aninhados multiplica o trabalho, resultando em quadrático.
  6. A alternativa D está errada, pois o número de nomes é justamente o fator que determina quantas operações são feitas.
  7. A alternativa E está errada, pois O(1) significa tempo constante, o que não se aplica a laços aninhados sobre o vetor, mesmo que N seja pequeno; para N pequeno o tempo é apenas menor, não constante.

💡 Dica: Considere a relação entre N e a quantidade de comparações feitas.

Alternativa por alternativa

A Erradaerro: Senso comum

O aluno acredita que, por haver mais dados, o algoritmo ganha eficiência, confundindo o tamanho da entrada com a melhoria de desempenho.

B Correta

Laços aninhados realizam cerca de N×N iterações (mais precisamente N(N-1)/2 comparações em muitas ordenações simples), resultando em comportamento quadrático à medida que N aumenta.

C Erradaerro: Conceituala que mais engana

O aluno associa a presença de dois índices a uma complexidade linear, sem perceber que os laços estão aninhados e se multiplicam em vez de somar.

Por que engana: Confundir a complexidade quadrática com a linear, acreditando que o uso de dois índices não afeta a complexidade temporal.

D Erradaerro: Conceitual

O aluno supõe que o número de elementos não altera o trabalho do algoritmo, talvez por não relacionar o número de iterações ao tamanho do vetor.

E Erradaerro: Conceitual

O aluno confunde algoritmo de tempo constante com redução do tempo para valores pequenos de N, achando que a complexidade passa a ser O(1) quando a entrada é pequena.

Raio-X da questão

Dificuldade Difícil
Bloom Analisar
Leitura medio
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade dupla
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ interpretativa🧩 desafio
🎯 Conceito central

complexidade temporal

📌 Objetivo

avaliacao

🧱 Pré-requisitos

complexidade de algoritmos · laços aninhados

📚 Reveja

Revisar conceitos de algoritmos e complexidade de tempo.

⚠️ Erro mais comum

Confundir a complexidade quadrática com a linear, acreditando que o uso de dois índices não afeta a complexidade temporal.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cientifico

Questões parecidas com resolução

Todas as questões de [CONFERIR] Construir soluções baseadas no uso de algoritmos e conceitos da Computação para resolver problemas, avaliando suas qualidades e melhorando-as.

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.