Questão de Algoritmos e Estrutura de Dados — Algoritmos — Instituto Legalle 2026
Algoritmos e Estrutura de Dados›Algoritmos
Código
qg747501
Banca
Instituto Legalle
Órgão
BADESUL - RS
Ano
2026
Nível
Superior
Cargo
Técnico em Desenvolvimento - Analista de Sistemas (Ênfase em Arquiteto de Software)
Um Analista de Sistemas foi incumbido de avaliar o desempenho de um algoritmo responsável pelo processamento de solicitações de financiamento, a fim de garantir sua eficiência antes da implantação em produção. Diante disso, considere o seguinte trecho de pseudocódigo no quadro a seguir:para i de 1 até n façapara j de 1 até n façaprocessarSolicitacao(i, j)fim_parafim_paraCom base na análise da complexidade de tempo desse algoritmo, assinale a alternativa CORRETA.
AO(n²)- quadrática.
BO(1) - constante.
CO(n) - linear.
DO(log n) - logarítmica.
EO(n³) - cúbica.
Revelar gabarito e comentário▾
GabaritoA — O(n²)- quadrática.
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”.
Análise de complexidade de laços aninhados
Gabarito: letra A. O pseudocódigo apresenta dois laços aninhados que iteram de 1 até n, resultando em n × n = n² iterações da operação interna processarSolicitacao(i, j). Isso caracteriza a complexidade de tempo como O(n²) – quadrática.
A banca testa o conhecimento fundamental de análise de algoritmos: contar o número de execuções de uma operação básica em função do tamanho da entrada. Cada laço isolado seria O(n); o aninhamento multiplica as complexidades.
Alternativa A — ✅ Correta ⟵ GABARITO
A operação interna é executada para cada par (i, j), com i e j variando de 1 a n, totalizando n² execuções. Desprezando constantes e termos de ordem inferior, a classe de complexidade é O(n²) – quadrática.
Alternativa B — ❌ Incorreta
O(1) – constante significaria que o tempo de execução não depende do tamanho da entrada n. Como o número de iterações cresce com n, não pode ser constante. O erro é confundir algoritmo de tempo constante (ex.: acesso direto a elemento) com este que possui laços.
Alternativa C — ❌ Incorreta
O(n) – linear seria o caso se houvesse apenas um laço de 1 a n. Aqui há dois laços aninhados, gerando n² iterações, e não n. O distrator confunde laço simples com duplo.
Alternativa D — ❌ Incorreta
O(log n) – logarítmica é típica de algoritmos que dividem o problema pela metade a cada passo (ex.: busca binária). Não há divisão alguma no código; a quantidade de trabalho cresce quadraticamente com n.
Alternativa E — ❌ Incorreta
O(n³) – cúbica ocorreria se houvesse três laços aninhados (ex.: para i, para j, para k). Como são apenas dois laços, a complexidade é n², e não n³. O distrator adiciona um laço extra indevidamente.
PEGA ESSA DICA!
Para algoritmos com laços aninhados, multiplique as repetições dos laços para obter o número total de iterações. Um laço duplo com ambos variando até n gera n² operações → O(n²).