我试着用Scala来完成Udacity的CS212,但是斑马拼图有问题,
python中的一些概念很难转换成Scala,特别是对于像我这样的初学者。
这些是我到目前为止管理的代码,

  val houses = List(1, 2, 3, 4, 5)
  val orderings = houses.permutations

  def imright(h1: Int, h2: Int): Boolean = {
    if (h1 - h2 == 1) true
    else false
  }

  def nextto(h1: Int, h2: Int): Boolean = {
    if (math.abs(h1 - h2) == 1) true
    else false
  }

我被难住了。
此外,如何在Scala中表示the houses = [first, _, middle, _. _] = [1, 2, 3, 4, 5]?请帮帮我,谢谢。

最佳答案

你想要的

val houses = List(1, 2, 3, 4, 5)
val List(first, _, middle, _, _) = houses


for (List(red, green, ivory, yellow, blue) <- orderings)

分别是。此外,请注意,在Scala中,这些类型的破坏必须从一个小写字母开始分配给变量;大写字母表示它应该匹配一个现有变量(或者如果它不存在则抛出异常)。.

关于python - 斯卡拉的斑马拼图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14090600/

10-10 21:22