摘要:很好地遇到了斐波那契更大的兄弟,。它基本上像斐波納契一樣,但是將序列的最后個而不是個數(shù)相加以生成下一個。入?yún)⒌臄?shù)組始終包含個數(shù)字將始終為非負數(shù),然后返回一個空數(shù)組。同時需要注意的的情況。
很好地遇到了斐波那契更大的兄弟,AKA Tribonacci。
它基本上像斐波納契一樣,但是將序列的最后3個(而不是2個)數(shù)相加以生成下一個。
所以,如果我們要以開始[1, 1, 1]輸入開始我們的Tribonacci序列,我們有這樣的序列:
[1, 1 ,1, 3, 5, 9, 17, 31, ...]
我們將開始修改與于[0, 0, 1]如下:
[0, 0, 1, 1, 2, 4, 7, 13, 24, ...]
你需要創(chuàng)建一個給出數(shù)組/列表的斐波納契函數(shù),返回前n個元素 - 包含所有序列。
入?yún)⒌臄?shù)組始終包含3個數(shù)字; n將始終為非負數(shù); if n == 0,然后返回一個空數(shù)組。
同時需要注意的0
public double[] tribonacci(double[] s, int n) { double[] b = new double[n]; // 如果長度小于3,則遍歷傳入的數(shù)據(jù)并返回對應的長度數(shù)組 if (n < 3) { for (int i = 0; i < n; i++) { b[i] = s[i]; } return b; } // 先把傳遞過來的前三位放到新數(shù)組中 if (s != null && s.length > 0) { for (int i = 0; i < s.length; i++) { b[i] = s[i]; } // 遍歷并放入長度減去3的數(shù)值放到新數(shù)組中 for (int i = s.length; i < n; i++) { double first = b[i - 3]; double second = b[i - 2]; double thrid = b[i - 1]; b[i] = (first + second + thrid); } } return b; }排名前三的最佳解答
1.
import java.util.Arrays; public class Xbonacci { public double[] tribonacci(double[] s, int n) { double[] tritab=Arrays.copyOf(s, n); for(int i=3;i2.
import java.util.Arrays; public class Xbonacci { public double[] tribonacci(double[] s, int n) { double[] tritab=Arrays.copyOf(s, n); for(int i=3;i3.
public class Xbonacci { public double[] tribonacci(double[] s, int n) { // hackonacci me if( n == 0 ) return new double[0]; double[] res = new double[n]; for( int i = 0; i < n; i++ ) { if( i < 3 ) res[i] = s[i]; else res[i] = res[i-1]+res[i-2]+res[i-3]; } return res; } }參考鏈接Solutions: Tribonacci Sequence
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/74074.html
摘要:轉載自我的博客效率呢斐波那契數(shù)列大家應該再熟悉不過了,平時面試也經(jīng)常會被問到,然而不知道大家有沒有考慮過它的效率呢普通版我們一般給出的代碼應該是這樣的這段代碼邏輯完全沒問題,但是如果你稍測試一下可能就會發(fā)現(xiàn)問題了,比如可以試一下,這時你 轉載自 我的博客 效率呢? 斐波那契數(shù)列大家應該再熟悉不過了,平時面試也經(jīng)常會被問到,然而不知道大家有沒有考慮過它的效率呢? 普通版 我們一般給出的...
摘要:今天去面試筆試題斐波那契數(shù)列實現(xiàn),雖然很簡單。回來想想既然算法這么重要那就從這個開始來記錄自己的算法庫吧。在數(shù)學上,斐波納契數(shù)列以如下被以遞歸的方法定義,,。斐波拉契算法規(guī)律很簡單,,觀察下數(shù)列值就很容易總結出來了。 一、寫在前面 算法這塊對于大多數(shù)程序員(包括我)來說可能都是一個薄弱的地方,如何彌補尼? 每個人都知道那就是學習、特別是算法沒有任何捷徑可走。 在這記錄平時自己工作和生...
摘要:與堆棧區(qū)別隊列的操作方式和堆棧類似,唯一的區(qū)別在于隊列只允許新數(shù)據(jù)在后端進行添加。移除隊列的第一項,并返回被移除的元素。三使用隊列計算斐波那契數(shù)列的第項。前兩項固定為,后面的項為前兩項之和,依次向后。 showImg(https://segmentfault.com/img/remote/1460000019005270); 這是第二周的練習題,這里補充下咯,五一節(jié)馬上就要到了,自己的...
摘要:斬從第題開始,到現(xiàn)在也差不多快一年了,回顧紀念一下。當時對回溯動態(tài)規(guī)劃也都只是上課的時候學過,也并不熟練。最經(jīng)典的例子就是斐波那契數(shù)列了,求第項數(shù)列的值。 leetcode 100 斬!從第 1 題開始,到現(xiàn)在也差不多快一年了,回顧紀念一下。 showImg(https://segmentfault.com/img/bVbu461?w=661&h=191); 為什么開始刷題? 從大一就...
閱讀 1211·2021-09-30 09:47
閱讀 3763·2021-09-06 15:02
閱讀 1775·2021-09-01 10:46
閱讀 2359·2019-08-30 15:52
閱讀 593·2019-08-29 15:28
閱讀 1873·2019-08-29 15:08
閱讀 1149·2019-08-29 13:28
閱讀 2573·2019-08-29 12:19