Para o desenvolvimento de algoritmos, deve-se considerar dois aspectos elementares: a correção e a análise. A correção verifica a exatidão da solução utilizada e a análise verifica se o algoritmo é eficiente, considerando o uso da memória e o tempo de execução. Logo, a escolha de um algoritmo deve considerar o uso dos recursos computacionais e a execução do algoritmo.
Sobre complexidade de algoritmos, analise as afirmativas a seguir:
I. Um problema computacional pode ter mais de uma solução algorítmica.
II. A finalidade de analisar a complexidade de um algoritmo é obter estimativas de tempo de execução dos programas que implementam o algoritmo desenvolvido.
III. A complexidade de um algoritmo depende da saída de um algoritmo.
IV. É possível analisar a complexidade de um algoritmo por casos especiais, como pior caso, caso médio e melhor caso.
É correto o que se afirma em:
A ) I, II e IV, apenas.
B ) II e IV, apenas.
C ) I, II e III, apenas.
D ) I, II, III e IV.
E ) I e IV, apenas.