递归:就是函数调用自身了。 典型:汉诺塔Hanio
public class Hanio{
public void move(int count,char x,char y,char z){//递归移动
if(count==1){//当仅仅有一个圆盘的时候,直接将其从x移动到z
System.out.println("将第"+count+"个从"+x+"移动到"+z);
}else{//>1个圆盘的时候
move(count-1,x,z,y);//将头count-1个从x移动到y,这样空出了第count个,直接将这一个x移动到z
System.out.println("将第"+count+"个从"+x+"移动到"+z);
move(count-1,y,x,z);//将y上的count-1个移动到z
}
}
public static void main(String[] args){
Hanio h = new Hanio();
h.move(3, 'a', 'b', 'c');
}
}
想更详细的了解Hanio的过程请查看
Hanio升级版