Java 兔子問題(斐波那契數列)擴充篇

 Java 兔子問題(斐波那契數列)擴充篇 斐波那契數列指的是這樣一個數列 0, 1, 1, 2,3, 5, 8, 13, 21, 34, 55, 89, 144, ...對於這個數列只能說將兔子生產周期第為3月,如果組建循環變成4月這個數列肯定不是這樣的,或者說兔子還有死亡周期,在這裡我是對兔子生產周期沒有限定,只要月份大於生產周期都可以計算出第month月份到底能產生多少對兔子。 Java兔子繁殖問題

java求質因數演算法

public class QualityFactor { /** * 因為不管怎麼計算由於非素數數都可以通過1·9中通過乘計算得出所以除了1和2隻需要繼續是否可以被2-9整除就可以 * 這一說法利用了提取最小公因式來計算得出 * 當然要避免一個重要問題就是當它是個位元字的時候也就是1 、 2 、 3 、 5 、7的時候直接返回 * 這樣計算的好處在於避免了傳統遞迴從1到n的反覆計算更加高效的計算出素數面對千位以上的資料使用 *

Java計算素數演算法最佳化以及拓展

package javaBlog;import java.util.ArrayList;import java.util.List;public class GetprimeNumber { /* * 擷取[1,n]區間素數*/ public List<Integer> forEachNumberGetprime(int number) { List<Integer> integers = new ArrayList<>();

Java計算三位元水仙花的實現以及最佳化方式

/*列印出所有的“水仙花數”,所謂“水仙花數”是指一個三位元,其各位元字立方和等於該數本身。例如:153是一個“水仙花數”,因為153=1的三次方+5的三次方+3的三次方由於100 200 300 500 400 整百數都不是水仙花可以直接排除而且 101 為基數的也不是水仙花可以直接排除這樣排除這兩個規律的直接跳過計算*/public class Narcissus { /* 開始已耗用時間1524629170834 153 370 371 407

java練習題:兔子問題

  Java練習題:兔子問題       此問題又叫斐波那契數列(Fabonacci),是最先研究這個數列的人是比薩的列奧那多(又名費波那契),他描述兔子生長的數目時用上了這數列。 第一個月有一對剛誕生的兔子 第二個月之後它們可以生育 每月每對可生育的兔子會誕生下一對新兔子 兔子永不死去        假設在 n

Java實現從檔案中讀入寫入學生資訊並實現增刪改

先實現單向鏈表再實現IO package SAVE;public class LinkList { // 鏈表public Node first;//private int pos;public LinkList() {this.first = new Node(null);}/** * * @param stu */public void addNode(Student stu) {Node node = new Node(stu);Node current =

java求迴文數演算法最佳化

public class PalindromeNumber { /** * 建立map集合儲存資料然後對資料進行判斷拋出 */ private Map<Integer, List<String>> palindromeData = new HashMap<>(); /** * 講數字直接轉為字串然後通過字串中間截取用兩個首尾進行對比得出 */ public boolean

(Java)數組的選擇排序法和二分尋找法實現

1、選擇排序法 public class SelectionSort {public static void main(String[] args) {double[] numbers={3,2,5,4,6,8,1,7,9,0};//調用SelectionSort選擇排序方法SelectionSort(numbers);for(int i=0;i<numbers.length;i++)System.out.print(numbers[i]+" ");System.

(Java)類的封裝、繼承和多態

封裝、繼承與多態是物件導向程式設計的三個核心特性。 封裝是物件導向技術中的一個重要概念,是一種資訊隱藏技術,它體現了物件導向程式設計的思想。繼承是物件導向程式設計方法的一個重要手段,通過繼承可以更有效地組織程式結構,明確類間的關係,充分利用已有的類來完成更複雜、更深入的程式開發。而多態允許以一種統一的風格處理已存在的變數和相關的類,多態性使得向系統增加功能變得容易。 1、封裝

hadoop學習之WordCount.java代碼解讀

package org.apache.hadoop.examples;import java.io.IOException;import java.util.StringTokenizer;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import

(Java)統計隨機產生的字母各自出現次數

輸出結果參考如下: 程式清單: 1、產生隨機數 //產生隨機數public class RandomCharacter {public static char getRandomCharacter(char ch1,char ch2){return (char)(ch1+Math.random()*(ch2-ch1+1));}//產生隨機小寫字母public static char getRandomLowerCaseLetter(){return

JAVA uuid的使用

在使用Oracle的時候,需要添加一個唯一的主鍵,一般使用的是36位的唯一的字串,我們有兩種方式   一、使用資料庫自動產生的方式,自動添加唯一的ID值   create table t_log( ssid varchar2(36) default sys_guid() primary key, type varchar2(10), detail varchar2(100));default sys_guid()這個函數時Oracle內建的,

遞迴實現猴子分桃 java實現

       5隻猴子摘了一堆桃子,約好第二天早上來分。第一隻猴子來得早,它將桃子平分成成5堆,多出1個,它把多出的一個吃了,把屬於自己的一堆拿走了,將剩下的還混成一堆,其他猴子來了也正好按一樣的方法處理。        編程求出原來最少有多少個桃子。(用遞迴函式。) 下面是我寫的遞迴演算法: public class PeachDivideAlgorithm { private

java經典演算法_016猴子吃桃問題(遞迴)

//題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一個   //第二天早上又將剩下的桃子吃掉一半,又多吃了一個 //以後每天早上都吃了前一天剩下   的一半零一個。到第10天早上想再吃時,見只剩下一個桃子了。 //求第一天共摘了多少。 package wzs.arithmetics;//題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一個

(Java)判斷迴文串,忽略既非字母又非數位字元

問題:檢測字串是否為迴文串,不計非字母和數位字元 解決: 1、通過刪除非字母非數位字元來過濾字串 建立Null 字元串緩衝區,將字串中每個字母和數字字元添加到字元緩衝區中,再從緩衝區中返回字串,可以使用Character類中的isLetterOrDigit(ch)方法檢測字元ch是否為字母數字。 2、倒置過濾後的字串得到一個新的字串,使用equals()方法比較倒置後字串和過濾後字串內容是否相等。

java 判斷一個數是素數(最佳化)

素數: 一個大於1的且只能被1和它本身整除的自然數叫素數 。 我們認為電腦判斷一個數是否是素數過程 :例如11 i=2 2*3  2*3 2*5 i=3 3*2  3*3 i=4 4*2 i=5 5*2 i=6( 超過11的大小了) 6*2 這裡我們可以很簡單的寫出一個窮舉法的程式 int i=2; while((n%i!=0)&&i<n) i++;

Java物件導向方式(觀察者模式)解決菲波拉契數列問題(兔子三歲後就可以生小兔子)

偶然看到了關於這個數學問題,就在想怎麼用物件導向的方式解決問題.小弟利用蹩腳的Java語言和剛學到的觀察者模式,想到了一個小辦法.大家有興趣看看吧! 原題如下: 有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少。 程式: // 周期對象,控制時間自動成長,被觀察的對象class Clock extends Observable {private static Clock

【Java演算法學習】斐波那契數列問題-兔子產子經典問題

題目:如果一對兩個月大的兔子以後每個月可以生一對兔子,而一對新生的兔子出生兩個月後才可以生兔子。也就是說1月份出生的3月份才能生子。假定一年內兔子沒有死亡事件,那麼一年後共有多少對兔子。 /** * 用遞推演算法求解斐波那契數列:Fn = Fn-2 +Fn-1; */import java.util.*;public class Fibonacci {public static void main(String[] args)

java經典問題——兔子

題目:古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少。  1.程式分析: 兔子的規律為數列1,1,2,3,5,8,13,21.... (不知道這個是不是題目提供的)

java求素數演算法

求100內的素數: public void a() { for (int i = 2; i <= 100; i++) { int temp = (int) Math.sqrt(i); // 我把那個aqrt單獨提出來,這樣速度稍微快一點,雖然在100內變化不大,但如果是10000000內的素數呢? if (i <= 3) {

總頁數: 4058 1 .... 1300 1301 1302 1303 1304 .... 4058 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.