- Fundamentos de ProgramaçãoAlgoritmosConstrução de Algoritmos
- Fundamentos de ProgramaçãoAlgoritmosDividir e Conquistar
- Fundamentos de ProgramaçãoAlgoritmosProgramação Dinâmica
- Fundamentos de ProgramaçãoRecursividade
Para resolver problemas de decisão sequencial e de controle, pode-se usar uma técnica que consiste em dividir esses problemas em subproblemas menores do mesmo tipo e, com isso, produzir algoritmos recursivos, frequentemente empregados para resolver problemas computacionais. Uma programação bastante utilizada é a Programação Dinâmica. Os passos que determinam uma maneira de realizar esse tipo de programação são:
I − remover um elemento do problema;
II − quebrar o problema em duas metades;
III − resolver um subproblema menor;
IV − resolver cada metade separadamente;
V − combinar as metades de forma a obter uma solução completa;
VI − utilizar a solução subproblema menor para adicionar o elemento removido de maneira adequada, solucionando o problema maior.
São corretas, apenas, os passos: