kuber
10-25-2002, 07:35 PM
I have seen this problem solved with an algorithm as such:
void hanoi(int n, int start, int finish, int extra) {
if(n != 0) {
hanoi(n-1,start,extra,finish);
printf("move disk %d from peg %d to peg %d\n",n,start,finish);
hanoi(n-1,extra,finish,start);
}
}
'move n discs from start to finish using extra'
I was wondering if anyone knew how to do this with just int n, int
start, and int finish.
void hanoi(int n, int start, int finish) {
???
}
Thanks,
kuber
void hanoi(int n, int start, int finish, int extra) {
if(n != 0) {
hanoi(n-1,start,extra,finish);
printf("move disk %d from peg %d to peg %d\n",n,start,finish);
hanoi(n-1,extra,finish,start);
}
}
'move n discs from start to finish using extra'
I was wondering if anyone knew how to do this with just int n, int
start, and int finish.
void hanoi(int n, int start, int finish) {
???
}
Thanks,
kuber