Dynamic Programming ist eine Lösungstechnik
für kombinatorische Optimierungsprobleme, bei
der sich die Kosten eines Problems x durch
Komposition der Kosten einiger Teilprobleme
x1,x2,...,xk ermitteln läßt, d.h.
Seien z.B. f (x) die Kosten des kürzesten Weges vom
Knoten 0 zum Knoten x in einem azyklischen Graph
((x,y) E x < y) gegeben durch