- Tous est dans le zip sinon voici l'algorithme récursif classique :
-
- /**
- * Méthode récursive de résolution des tours de Hanoi.
- * ...
- */
- private void doHanoi(int n, TowerPosition t, TowerPosition f,
- TowerPosition u) {
- if (n > 0) {
- doHanoi(n - 1, u, f, t);
-
- ...
-
- doHanoi(n - 1, t, u, f);
- }
- }
-
- /**
- * Résoud le problème des tours de Hanoi.
- */
- public List<Hanoi3Movement> resolve() {
- doHanoi(nbDisks, TowerPosition.RIGHT_TOWER, TowerPosition.LEFT_TOWER,
- TowerPosition.MIDDLE_TOWER);
- return movements;
- }
Tous est dans le zip sinon voici l'algorithme récursif classique :
/**
* Méthode récursive de résolution des tours de Hanoi.
* ...
*/
private void doHanoi(int n, TowerPosition t, TowerPosition f,
TowerPosition u) {
if (n > 0) {
doHanoi(n - 1, u, f, t);
...
doHanoi(n - 1, t, u, f);
}
}
/**
* Résoud le problème des tours de Hanoi.
*/
public List<Hanoi3Movement> resolve() {
doHanoi(nbDisks, TowerPosition.RIGHT_TOWER, TowerPosition.LEFT_TOWER,
TowerPosition.MIDDLE_TOWER);
return movements;
}