首页 > 编程 > Java > 正文

Java编程题练习2017-02-06

2019-11-10 23:53:39
字体:
来源:转载
供稿:网友

古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

方法一:非递归 public static void main(String[] args) { // TODO Auto-generated method stub long[] arr=new long[20]; arr[0]=arr[1]=arr[2]=1; for(int i=3;i<20;i++){ arr[i]=arr[i-1]+arr[i-2]; } for(int i=1;i<20;i++){ System.out.PRintln(“第”+i+”个月兔子的总数是:”+arr[i]); } }

方法二:递归 public class ru20170207 { public static void main(String[] args) { // TODO Auto-generated method stub for(int i=1;i<20;i++){ System.out.println(“第”+i+”个月兔子的总数是:”+meigeyuetuzi(i)); } } public static long meigeyuetuzi(int n){ if(n==1||n==2){ return 1; }else { return meigeyuetuzi(n-1)+meigeyuetuzi(n-2); } } }


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表