黑马程序员技术交流社区
标题:
JAVA递归算法基础--汉诺塔--
[打印本页]
作者:
八宝
时间:
2015-12-10 18:21
标题:
JAVA递归算法基础--汉诺塔--
public class hanoi {
static long i=0;
public static void main(String[] args) {
moveHanoi(5,"A","B","C");
System.out.println(i);
}
public static void moveHanoi(int num,String sta,String pro,String end)
{
if(num==1) //递归的出口。
{
i++; //计算次数
System.out.println(sta+">>"+end);
}
if(num>1) //递归的入口
{
moveHanoi(num-1,sta,end,pro);
moveHanoi(1,sta,null,end);
moveHanoi(num-1,pro,sta,end);
}
}
}
复制代码
作者:
Myth、骞
时间:
2015-12-10 18:57
不看答案-。-我自己就编不出来,我觉得。。
作者:
八宝
时间:
2015-12-11 20:14
Myth、骞 发表于 2015-12-10 18:57
不看答案-。-我自己就编不出来,我觉得。。
递归不知道什么时候用,就是有时候知道要用递归了不知道怎么往递归的上面找思路,这点比较不好理解,前天看到有个人发的递归解决螺旋矩阵的就比较佩服。我自己绝对想不起来的。螺旋矩阵到现在还是一头雾水
作者:
八宝
时间:
2015-12-11 20:15
我觉得递归最好把能变化的参数都设计到参数列表里去,这样比较好想具体的思路
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2