1、基本情况(直接能求的):f(1,“A”,“B”,“C”),可以直接求,从A--->C。
2、递归情况(大事化小,自己调用自己):f(n,"A","B","C")
* han(n-1,A,C,B)
* println(n-1,B,A,C)
object day4 {
//记,han(n,起点,过柱子,终点)表示:把n个盘子,从起点位置,借助过渡柱子,移动到终点
def han(n: Int, A: String, B: String, C: String): Unit = {
if (n == 1) {
println(s"$A ---> $C")
} else {
//1.前n-1个,从A->B,用C过渡
han(n - 1, A, C, B)
// 2.把1个盘子从A->C
println(s"$A ---> $C")
// 前n-1个,从B->C,用A过度
han(n - 1, B, C, A)
}
}