Function 什么';这个密码怎么了?(斯卡拉河内塔楼)
我再次需要帮助。我不知道这个代码怎么了,有人能帮我吗Function 什么';这个密码怎么了?(斯卡拉河内塔楼),function,scala,Function,Scala,我再次需要帮助。我不知道这个代码怎么了,有人能帮我吗 def moveTower(n: Int, source: Stack[Int], sink: Stack[Int], workspace: Stack[Int]): Stack[Int] = { if (n == 1) { sink.push(source.pop.##) } else { moveTower(n - 1, source, workspace, sink) sink
def moveTower(n: Int, source: Stack[Int], sink: Stack[Int], workspace: Stack[Int]): Stack[Int] = {
if (n == 1) {
sink.push(source.pop.##)
} else {
moveTower(n - 1, source, workspace, sink)
sink.push(source.pop.##)
moveTower(n - 1, workspace, sink, source)
}
}
var source = Stack[Int](5, 4, 3, 2, 1)
var sink = Stack[Int]()
var workspace = Stack[Int]()
moveTower(source.length.toInt, source, sink, workspace)
println(source, sink, workspace)
一致:
println(moveTower(n, source, sink, workspace))
请注意,
moveTower()
类型是它的print单位。toString
我尝试了“println(moveTower(n,source,sink,workspace)),但它说找不到“n”。在python版本中,您为它提供了len(source)
,而不是n
。