1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
creer tous(results, stack, list) {
appeler creer(results, stack, list);
si list n'est pas vide
alors appeler create tous (results, stack, sous liste de list de 1 à fin)
sinon results.add( liste vide ) // cas aucun élement, qu'on pourrait traiter complètement à part
}
creer(results, stack, list) {
si list n'est pas vide
item0 = premier élément de list
// si il n'y a pas de caractère en commun entre item0 et un élément de stack
empile item0 dans stack
stocke dans results une copie de stack // java: results.add(new ArrayList<>(stack)));
appeler creer Sous-Liste( results, stack, sous liste de list de 1 à fin )
dépile item0 de stack
// fin si
fin si
}
creer Sous-Liste(results, stack, list) {
appeler creer(results, stack, list);
si list pas vide
alors appeler creer Sous-Liste(results, stack, sous liste de list de 1 à fin);
} |
Partager