/*
C为最终放置的柱子,A为起始柱子
*/
var times = 0;
function hanoi(n, a, b, c) {
if (n > 0) {
hanoi(n - 1, a, c, b);
document.write('第' + ++times + '步:从柱子 ' + a + ' ' + n + ' 移动到柱子 ' + c + ' <br>');
hanoi(n - 1, b, a, c);
} else {
return 0;
}
}
hanoi(3, 'A', 'B', 'C');
输出:
第1步:从柱子 A 1 移动到柱子 C
第2步:从柱子 A 2 移动到柱子 B
第3步:从柱子 C 1 移动到柱子 B
第4步:从柱子 A 3 移动到柱子 C
第5步:从柱子 B 1 移动到柱子 A
第6步:从柱子 B 2 移动到柱子 C
第7步:从柱子 A 1 移动到柱子 C