、
class Solution{
public void hanota(List<Integer> A, List<Integer> B, List<Integer> C) {
move(A.size(), A, B, C);
}
void move(int n, List<Integer> a, List<Integer> b, List<Integer> c){
if(n <= 1){
//直接从a移动到c
c.add(a.remove(a.size()-1));
return;
}
// A,借助C,将A中n-1个盘子放到B上
move(n-1, a, c, b);
// 将A的第n个盘子放到C上
Integer remove = a.remove(a.size() - 1);
c.add(remove);
// B 借助 A,将B中n-1个盘子,移动到C上
move(n-1, b, a, c);
}
}