Problème de partition
From Wikipedia, the free encyclopedia
En informatique théorique, le problème de partition est le problème de décision qui, étant donné un multiensemble S d'entiers naturels, détermine s'il existe une partition de S en deux sous-ensembles S1 and S2 tels que la somme des éléments de S1 soit égale à la somme des éléments de S2.
On ne connait pas d'algorithme en temps polynomial permettant de trouver une solution exacte rapidement dans tous les cas, c'est un problème NP-complet.
Une définition formelle du problème de décision est la suivante: Étant donné un multiensemble de n nombres entiers positifs. On cherche deux sous-multiensembles et de telle sorte que et . On définit comme ceci :
Si est nul, alors la somme des éléments de est égale à la somme des éléments de et une solution au problème existe pour .
Par exemple, on peut partitionner le multiensemble {3,1,1,2,2,1} en {1,1,1,2} et {2,3}, puisque la somme de leurs éléments est égale (1 + 1 + 1 + 2 = 5 ainsi que 2 + 3 = 5). Pour le multiensemble {7,3,1,7}, il n'est pas possible de trouver deux sous-multiensembles qui respectent la contrainte.