码迷,mamicode.com
首页 > 其他好文 > 详细

经典汉诺塔递归实现

时间:2016-10-11 00:12:41      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:汉诺塔

/*
 * 为了将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

经典汉诺塔递归实现

标签:汉诺塔

原文地址:http://rubinzhan.blog.51cto.com/11883911/1860374

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!