A alternativa correta é a letra C: "Os algoritmos que consideram a programação dinâmica resolvem cada instância reduzida do mesmo problema uma única vez, armazenando o valor obtido para consultas posteriores." A programação dinâmica é uma técnica de otimização que consiste em quebrar um problema em subproblemas menores e resolver cada um deles apenas uma vez, armazenando o resultado para consultas posteriores. Dessa forma, evita-se a repetição de cálculos desnecessários e reduz-se o tempo de execução do algoritmo. No caso do algoritmo recursivo de Fibonacci, ele não utiliza a programação dinâmica e resolve várias vezes a mesma instância do problema, o que pode levar a um alto tempo de execução. Já a programação dinâmica é utilizada para solucionar o caso da resolução repetida de instâncias menores do problema, como afirmado na alternativa B. A alternativa D está incorreta, pois a programação dinâmica pode ser utilizada em problemas determinísticos ou não-determinísticos.
Para escrever sua resposta aqui, entre ou crie uma conta
Linguagens de Programação e Estrutura de Dados
Compartilhar