搞清楚遞歸只要搞清兩點(diǎn):
- 結(jié)束條件
- 把問題規(guī)模縮小
大梵天創(chuàng)造世界的時(shí)候做了三根金剛石柱子丽柿,在一根柱子上從下往上按照大小順序摞著64片黃金圓盤。大梵天命令婆羅門把圓盤從下面開始按大小順序重新擺放在另一根柱子上。并且規(guī)定暮蹂,在小圓盤上不能放大圓盤,在三根柱子之間一次只能移動(dòng)一個(gè)圓盤癌压。
public class HelloWorld{
public static int steps=0;
public static void hanoi(int n,int a,int b,int c){
steps++;
if(n==1)
System.out.println(a +"->"+ c);
else{
hanoi(n-1,a,c,b);
System.out.println(a+"->"+c);
hanoi(n-1,b,a,c);
}
}
public static void main(String []args){
hanoi(2,1,2,3);
System.out.println("steps"+steps);
}
}