最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java編程經典案例之基于斐波那契數列解決兔子問題實例

 更新時間:2017年10月23日 10:36:50   作者:CharlinGod  
這篇文章主要介紹了java編程經典案例之基于斐波那契數列解決兔子問題,結合完整實例形式分析了斐波那契數列的原理及java解決兔子問題的相關操作技巧,需要的朋友可以參考下

本文實例講述了java基于斐波那契數列解決兔子問題。分享給大家供大家參考,具體如下:

題目:古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少?

package com.java.recursion;
/**
* @描述 三種方法實現斐波那契數列
* @項目名稱 Java_DataStruct
* @包名 com.java.recursion
* @類名 Fibonacci
* @author chenlin
*/
public class Fibonacci {
/**
* 題目:古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,
* 問每個月的兔子總數為多少?
* month 1 2 3 4 5 6
* borth 0 0 1 1 2 3
* total 1 1 2 3 5 8
*/
  /**
   * 疊加法
   *
   * @param month
   * @return
   */
  public static int getTotalByAdd(int month) {
    int last = 1;//上個月的兔子的對數
    int current = 1;//當月的兔子的對數
    int total = 1;
    for (int i = 3; i <= month; i++) {
      //總數= 上次+當前
      total = last + current;
      last= current ;
      current = total;
    }
    return total;
  }
  /**
   * 使用數組
   *
   * @param month
   * @return
   */
  public static int getTotalByArray(int month) {
    int arr[] = new int[month];
    arr[1] = arr[2] = 1;
    for (int i = 2; i < month; i++) {
      arr[i] = arr[i - 1] + arr[i - 2];
    }
    return arr[month - 1] + arr[month - 2];
  }
  public static int getTotalByRecusion(int month) {
    if (month == 1 || month == 2) {
      return 1;
    } else {
      return getTotalByRecusion(month - 1) + getTotalByRecusion(month - 2);
    }
  }
  public static void main(String[] args) {
    System.out.println("腳本之家測試結果:");
    System.out.println(getTotalByAdd(3));
    System.out.println(getTotalByAdd(4));
    System.out.println(getTotalByAdd(5));
    System.out.println(getTotalByAdd(6));
  }
}

運行結果:

 

更多關于java算法相關內容感興趣的讀者可查看本站專題:《Java數據結構與算法教程》、《Java操作DOM節(jié)點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對大家java程序設計有所幫助。

相關文章

  • Spring中的事務操作、注解及XML配置詳解

    Spring中的事務操作、注解及XML配置詳解

    這篇文章主要給大家介紹了關于Spring中事務操作、注解及XML配置的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-12-12
  • Java解析變量公式的簡單示例

    Java解析變量公式的簡單示例

    在Java編程中,經常會遇到需要解析表達式或公式的情況,特別是涉及到動態(tài)計算或配置項的場景,在本篇文章中,我將介紹如何在Java中解析變量公式,并給出一個簡單的實現示例,需要的朋友可以參考下
    2024-10-10
  • Java如何使用multipartFile對象解析Execl

    Java如何使用multipartFile對象解析Execl

    本文介紹了如何使用Spring的MultipartFile類解析Excel文件(.xls和.xlsx),包括文件上傳、數據校驗、輸入流獲取、文件解析、數據保存和異常處理的詳細步驟
    2025-02-02
  • SpringBoot深入分析webmvc和webflux的區(qū)別

    SpringBoot深入分析webmvc和webflux的區(qū)別

    這篇文章主要介紹了SpringBoot深入分析webmvc和webflux的區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2023-02-02
  • SpringBoot使用AOP實現防重復提交功能

    SpringBoot使用AOP實現防重復提交功能

    這篇文章主要為大家詳細介紹了SpringBoot如何使用AOP實現防重復提交功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-03-03
  • java接口中的代理設計模式代碼時實踐

    java接口中的代理設計模式代碼時實踐

    這篇文章主要介紹了java接口中的代理設計模式代碼時實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • springboot之聯表查詢方式

    springboot之聯表查詢方式

    這篇文章主要介紹了springboot之聯表查詢方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • java中@Configuration使用場景

    java中@Configuration使用場景

    本文主要介紹了java中@Configuration使用場景,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • 解決springcloud啟動時報錯Connection refused:connect問題

    解決springcloud啟動時報錯Connection refused:connect問題

    這篇文章主要介紹了解決springcloud啟動時報錯Connection refused:connect問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java畢業(yè)設計實戰(zhàn)之養(yǎng)老院管理系統的實現

    Java畢業(yè)設計實戰(zhàn)之養(yǎng)老院管理系統的實現

    讀萬卷書不如行萬里路,只學書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SSM+JSP+Easyui+maven+mysql實現一個養(yǎng)老院管理系統,大家可以在過程中查缺補漏,提升水平
    2022-03-03

最新評論

泉州市| 南平市| 九龙县| 禹城市| 云浮市| 曲松县| 凤庆县| 湾仔区| 岑巩县| 墨脱县| 聂荣县| 年辖:市辖区| 灌云县| 东台市| 临漳县| 杭锦旗| 专栏| 仪陇县| 清远市| 桐柏县| 濉溪县| 大港区| 平昌县| 会昌县| 天镇县| 乐至县| 庆安县| 广宁县| 定远县| 巴中市| 青海省| 新乡市| 工布江达县| 改则县| 铁岭市| 夏津县| 仁怀市| 阜康市| 印江| 章丘市| 开江县|