scala递归函数案例 --汉诺塔通关秘籍

27 阅读1分钟

eg1:a的n次方

image.png

解答:

object basss11 {
  def f(a: Int,n:Int): Int = {
    if (n == 0) {
      1
    } else {
      f(a,n-1)*a
    }
  }

  def main(args: Array[String]): Unit = {
    val s = f(2,3)
    println(s)
  }
}

汉诺塔游戏通关秘籍


object basss11 {
  def f(n: Int,A:String,C:String,B:String): Unit = {
    if (n == 1) {
      println(s"${A}${C}")
    } else {
      f(n-1,A,B,C)
      println(s"${A}${C}")
      f(n-1,B,C,A)
    }
  }

  def main(args: Array[String]): Unit = {
   f(5,"A","C","B")

  }
}
  • 完结撒花 !!!!!!!!!!
  • 制作不易 希望·一键三连 在此感谢关注的粉丝宝宝
  • 新来的宝宝可以关注下主播哟!!!!!