首页 > 代码库 > 经典汉诺塔递归实现

经典汉诺塔递归实现

/*
 * 为了将num个盘子从char移动到to,需要先将第num个盘子上面的num-1个盘子移动到temp上,
 * 然后将第num个盘子移动到to上,最后将第N-1个盘子从temp移动到to上。这样通过递归
 * 就可以实现汉诺塔问题的求解。
 */

public static void HanuoTower(int num, char from, char temp, char to){
	if(num==1){
		System.out.println("从"+from+"移动盘子"+num+"号到"+to);
	}
	else{
		HanuoTower(num-1,from,to,temp);
		System.out.println("从"+from+"移动盘子"+num+"号到"+to);
		HanuoTower(num-1,temp,from,to);
	}
}


本文出自 “递归的梦想偏执狂” 博客,请务必保留此出处http://rubinzhan.blog.51cto.com/11883911/1860374

经典汉诺塔递归实现