java经典面试题 兔子生兔子

package com.sjp.test;


import java.util.Iterator;


public class TuZi {
   
//递归的方式解决兔子
public  static int setTuZi(int a) {
if(a<2) {
return 1;
}
else {
return setTuZi(a-1)+setTuZi(a-2);
}
}
//数组的方式解决兔子
public static int[] arry(int a) {
int ary[]=new int[a] ;
for (int i = 0; i <a; i++) {
if(i<2) {
ary[i]=1;
}
else {
ary[i]=ary[i-1]+ary[i-2];
}
}
return ary;
}
//表达式的方式
     public static void tuzi(int f) {
     int a = 1, b = 1, c = 0;  
     for (int i = 0; i < f; i++) {
if(i<2) {
System.out.println(i);
}
else {
c = a + b;  
                a = b;  
                b = c; 
System.out.println(c);
}
}
     
     }

public static void main(String[] args) {
for(int a=0;a<20;a++) {
int setTuZi = setTuZi(a);
System.out.println(setTuZi);
}
System.out.println("------------------------");
int[] arry = arry(20);
for (int i : arry) {
System.out.println(i);
}
System.out.println("-------------------------");
tuzi(20);
}
 
}
 
 

猜你喜欢

转载自blog.csdn.net/qq_38639624/article/details/80355275