汉诺塔算法

public class HanoTower {
	public static void doTower(int topN,char from,char inter,char to) {
		if (topN==1) {	//当只有一个盘子时,直接放入to底座
			System.out.println("盘子1从"+from+"塔座到"+to+"塔座");
		} else {	//当大于一个盘子时
			doTower(topN-1, from, to, inter);//通过递归先将除最后一个外所有盘子放入inter底座
			System.out.println("盘子"+topN+"从"+from+"塔座到"+to+"塔座");//将最后一个盘子放入to底座
			doTower(topN-1, inter, from, to);//将其他盘子从inter底座放入to底座
		}
	}
}

你可能感兴趣的:(汉诺塔算法)