O que caracteriza um algoritmo eficiente em programação?
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Elaborar algoritmos que envolvam instruções sequenciais, de repetição e de seleção usando uma linguagem de programação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
O que caracteriza um algoritmo eficiente em programação?
- A) Complexidade alta de instruções.
- B) Uso de muitos recursos na execução.
- C) Resolução de problemas simples apenas.
- D) Baixa complexidade e pouco uso de memória.
- E) Instruções confusas e longas.
✅ Resposta correta: alternativa D
Resolução passo a passo
- Um algoritmo é considerado eficiente quando consegue resolver o problema gastando poucos recursos computacionais, principalmente tempo de execução e memória. Esses dois critérios são medidos pela complexidade de tempo e pela complexidade de espaço.
- Analisando as alternativas, a alternativa D afirma que o algoritmo eficiente tem baixa complexidade e pouco uso de memória. Isso corresponde exatamente ao conceito de eficiência: quanto menor o custo de tempo e de espaço, mais eficiente é o algoritmo. Portanto, a alternativa D está correta.
- A alternativa A está errada, pois alta complexidade de instruções é justamente o oposto de eficiência.
- A alternativa B está errada, pois o uso excessivo de recursos na execução caracteriza um algoritmo ineficiente.
- A alternativa C está errada, pois resolver apenas problemas simples não define eficiência; a eficiência se refere ao custo de resolver o problema, independentemente de sua dificuldade.
- A alternativa E está errada, pois instruções confusas e longas dificultam a leitura, a manutenção e normalmente também aumentam o custo de execução, sendo uma característica de código de má qualidade.
- Conclusão: a resposta correta é D, que coincide com o gabarito oficial.
💡 Dica: Pense nas características que tornam um algoritmo mais rápido e eficaz.
Alternativa por alternativa
O aluno pode ter associado 'complexidade' a algo positivo, como sofisticação ou riqueza de detalhes, sem perceber que em algoritmos complexidade significa custo de execução.
O aluno pode ter entendido que usar mais recursos significa fazer mais trabalho e, portanto, ser mais poderoso, confundindo capacidade com eficiência.
Por que engana: Confundir eficiência com complexidade alta, acreditando que mais instruções significam melhor desempenho.
O aluno pode ter confundido eficiência com simplicidade do problema, imaginando que um algoritmo eficiente é aquele que só serve para casos fáceis, em vez de ser aquele que resolve bem qualquer problema.
Um algoritmo eficiente deve ser simples e econômico em recursos.
O aluno pode ter confundido 'longas' com 'completas' e 'confusas' com 'detalhadas', supondo que mais instruções e mais complexidade na escrita tornam o algoritmo melhor.
Raio-X da questão
algoritmo eficiente
avaliacao
definição de algoritmo · complexidade de algoritmos
Revisar os princípios de eficiência em algoritmos.
Confundir eficiência com complexidade alta, acreditando que mais instruções significam melhor desempenho.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Qual a principal característica de um algoritmo eficiente?
- Qual é a principal característica de um algoritmo eficiente?
- Quais são as características de um algoritmo eficaz?
- Em qual situação um algoritmo é considerado eficiente?
- Quando um algoritmo é considerado eficiente?
- O que caracteriza um algoritmo em programação?
🔎 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
