汉诺塔问题

目标:将A上面的方块移动到C上面 并且不能将大的方块落到小的方块上面
注意:灵魂画手已出现
汉诺塔问题汉诺塔问题汉诺塔问题汉诺塔问题汉诺塔问题共经历了七部
大中小 ---- 123
一个盘子:大到3
两个盘子:小到2 大到3 小到3
三个盘子:小到3 中到2 小到2 大到3 小到1 中到3 小到3
以此类推:
总移动步数:2**n - 1
大于三个盘子:可以理解成一个整体 然后按照两个盘子去思考
汉诺塔问题

	public static void hanoi(int num, int start, int mid, int end) {
		if (num == 1) {
			System.out.println(start + "--->" + end);
		} else {
			hanoi(num - 1, start, end, mid);
			System.out.println(start + "--->" + end);
			hanoi(num - 1, mid, start, end);
		}
	}
	

盘子再多 我们就把他简化成两个 去看待
当num-1个盘子放到中间未知的时候 我们就把中间的柱子看做第一个继续去进行

		hanoi(1, 11, 22, 33);
   	System.out.println("========");
   	hanoi(2, 11, 22, 33);
   	System.out.println("========");	
   	hanoi(3, 11, 22, 33);

汉诺塔问题