A teoria da computação fornece base científica e matemática para muitos processos computacionais. Um deles é o que se refere à análise de algoritmos, o que permite a comparação entre desempenho de algoritmos que resolvem um mesmo problema. Em geral, quanto mais rápido cresce a função que representa um algoritmo em função do tamanho de entrada e o número de comparações, pior é o algoritmo
Dados quatro algoritmos (A), (B), © e (D) que resolvem um mesmo problema, sendo que: (A) algoritmo de desempenho logarítmico, (B) algoritmo de desempenho linear, © algoritmo de desempenho polinomial e (D) algoritmo de desempenho exponencial, podemos afirmar:
A-Algoritmo A é preferível, depois na ordem, B, C e D, sendo este último o menos interessante deles
B-Algoritmo D é preferível, depois na ordem, C, D e A, sendo este último o menos interessante deles
C-Algoritmo B é preferível, depois na ordem A, C e D, sendo este último o menos interessante deles
D-Algoritmo C é preferível, depois na ordem, B, A e D, sendo este último o menos interessante deles
E-Algoritmo A é preferível, depois na ordem, D, C e B, sendo este último o menos interessante deles
Respostas
Resposta:
A-Algoritmo A é preferível, depois na ordem, B, C e D, sendo este último o menos interessante deles
Explicação:
Analisamos as complexidades apresentadas e concluímos que, considerando que o algoritmo pode receber uma entrada de qualquer tamanho, podemos dizer que o Algoritmo A é preferível, depois na ordem, B, C e D, sendo este último o menos interessante deles. Logo a alternativa A está correta.
Analisando os algoritmos pela sua complexidade para o pior caso
Quando temos um algoritmo podemos determinar que ele possui um pior caso de execução e um melhor caso de execução, conforme sua entrada. Temos por exemplo:
- Um algoritmo de ordenamento, que recebe uma entrada de cinco valores;
- O melhor caso é que os valores já estejam todos ordenados;
- O pior caso é se todos os valores estiverem inversamente ordenados.
Mas neste exemplo nosso algoritmo recebeu apenas 5 valores de entrada. No mundo real precisamos ter a ideia de que os algoritmos receberão entradas imensas. Por isso precisamos sempre considerar sua complexidade para lidar com esses casos. Podemos ordenar as complexidades da seguinte maneira:
- Desempenho logaritmico: é um algoritmo de muito bom desempenho, principalmente quando consideramos uma entrada grande.
- Desempenho linear: Quando se tem uma entrada grande o algoritmo linear deixa de ser uma boa opção.
- Desempenho Polinomial: Ele é ótimo para uma entrada pequena, mas para uma entrada grande, ele não é uma boa opção.
- Desempenho Exponencial: Esse desempenho não é bom nem para entradas pequenas.
Após analisarmos as complexidades apresentadas, considerando que o algoritmo pode receber uma entrada de qualquer tamanho, podemos dizer que o Algoritmo A é preferível, depois na ordem, B, C e D, sendo este último o menos interessante deles. Logo a alternativa A está correta.
Descubra mais sobre algoritmos em: https://brainly.com.br/tarefa/25021296
#SPJ2