Bonjour à tous!

J'ai un problème avec un exercice.

Il s'agit d'une variante des tours de Hanoï où l'on place les disques impairs à gauche, et ceux pairs à droite.
On a donc les disques 1, 3, ..., 2n-1 à gauche et les disques 2,4, 2n à droite. L'objectif est de déplacer tous ces cercles au milieu et dans cet ordre : 1,2, ..., 2n-1, 2n.


Le problème c'est qu'il faut faire ce programme en récursif, et j'ai vraiment du mal à commencer le code. Je trouve ça pas évident... Pourriez-vous m'aider ?


Pour le problème des tours de Hanoï classique, j'ai trouvé ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
// in main: 
solveHanoi(n, 'A', 'B', 'C'); 
public static void solveHanoi(int n, char source, char destination, char spare) 
{ 
if (n == 1) 
System.out.println("Move disc 1 from " + source + " to " + destination); 
else { 
solveHanoi(n-1, source, spare, destination); 
System.out.println("Move disc " + n + " from " + source + " to " + destination); 
solveHanoi(n-1, spare, destination, source); 
} 
}

Merci de m'aiguiller !