1.把左边的N-1块放在中间
2.再把第N块直接挪到右边
3.把N-1块借助左边,来挪到右边
public static void process(int N,String from,String to,String help) {
if(N==1) {
System.out.println("move 1 from"+from+" to"+to);
}else {
process(N-1, from, help, to);//把左边的N-1块挪到中间
System.out.println("move "+N+" from"+from+" to"+to);//第N块直接挪到右
process(N-1, help, to, from);//把中间的N-1块借助左边的挪到右边,依次递归
}
}
public static void main(String[] args) {
process(4, "左", "右", "中");
}