首页 > 代码库 > 题目序号(1~5)
题目序号(1~5)
程序1:
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总对数为多少?
1 /**
2 * Fibonacci
3 * 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总对数为多少?
4 *
5 * @author langdao
6 *
7 */
8 package oneToTen;
9 import java.util.Scanner;
10 public class Fibonacci {
11 public static void main(String[] args) {
12 // TODO Auto-generated method stub
13 Scanner scanner = new Scanner(System.in);
14 System.out.println("请输入第几个月份:");
15 int n = scanner.nextInt();
16 System.out.println(fibonacci(10) + ":" + fibonacciNormal(10));
17 int sum = 0;
18 for (int i = 1; i <= n; i++) {
19 System.out.print(fibonacci(i) + "\t");
20 }
21 }
22 // 递归实现方式
23 public static int fibonacci(int n) {
24 if (n <= 2) {
25 return 1;
26 } else {
27 return fibonacci(n - 1) + fibonacci(n - 2);
28 }
29 }
30 // 递推实现的方式
31 public static int fibonacciNormal(int n) {
32 if (n <= 2) {
33 return 1;
34 }
35 int n1 = 1, n2 = 1, sn = 0;
36 for (int i = 0; i < n - 2; i++) {
37 sn = n1 + n2;
38 n1 = n2;
39 n2 = sn;
40 }
41 return sn;
42 }
43 }
题目序号(1~5)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。