挑战以递归方式解决河内
我无法超越这一挑战的第二阶段,这是一种耻辱,因为这意味着我无法完成任何事情。有人可以帮忙吗?
问题如下:
进行递归函数调用,将位于fromPeg底部磁盘顶部的磁盘移动到备用挂钩,即将(numDisks - 1)磁盘移动到备用挂钩。
您可以使用getSparePeg函数找到备用挂钩。
对hanoi.getSparePeg(peg1,peg2)的调用会返回剩余的peg,它不是peg1或peg2。
提示说明了这一点:
//递归案例:
var sparePeg = hanoi.getSparePeg(fromPeg, toPeg);
solveHanoi();
尽管如此,尽管它似乎只是要求用参数填写solveHanoi(),但它不会进展。我是否必须单独声明fromPeg和toPeg,并为它们分配字母?
以下是对代码的粗略抨击:
var solveHanoi = function(numDisks, fromPeg, toPeg) {
if (numDisks===0)
{
return;
}
};
var fromPeg="A";
var toPeg="B";
var sparePeg = hanoi.getSparePeg(fromPeg,toPeg);
//solveHanoi(5, "A","B");
//Program.assertEqual(hanoi.isSolved("B"),true);