METODA PROGRAMĂRII DINAMICE 8.1 Noțiuni generale despre programare dinamică Programarea dinamică rezolvă problemele prin descompunerea lor în subprobleme şi prin combinarea rezolvărilor acestora (termenul „programare" se referă aici la o metodă tabulară)....
More
METODA PROGRAMĂRII DINAMICE 8.1 Noțiuni generale despre programare dinamică Programarea dinamică rezolvă problemele prin descompunerea lor în subprobleme şi prin combinarea rezolvărilor acestora (termenul „programare" se referă aici la o metodă tabulară). Spre deosebire de divide et impera, care considera că subproblemele sunt independente, programarea dinamică se aplică atunci când subproblemele nu sunt independente. Într-un astfel de caz, divide et impera ar efectua calcule redundante (surplus de informație transmis față de strictul necesar, abundență inutilă de expresii etc.) rezolvând fiecare subproblemă ca şi când nu ar mai fi întâlnit-o. Programarea dinamică, însă, salvează rezultatul fiecărei subprobleme într- o tabelă, evitând astfel rezolvarea redundantă a aceleiaşi probleme. Programarea dinamică se aplică în general problemelor de optimizare, atunci când dorim să determinăm rapid soluţia optimă pentru o problemă. De fapt, aplicând această tehnică determinăm una din soluţiile
Less