Principe
- On décompose le problème en sous-problèmes plus simples.
- On résout les sous-problèmes.
- On combine les sous-problèmes de façon à construire la solution du problème initial.
Indépendance des sous-problèmes
- Si les sous-problèmes sont indépendants les uns des autres : « Diviser pour règner ».
- Si les sous-problèmes dépendent les uns des autres : « Programmation dynamique ».