【C語言】斐波那契數列的兩種演算法(迴圈,遞迴)
#include<stdio.h> int Fabio(int n) //迴圈 { int i; int f1 = 1; int f2 = 1; int f3 = 1; for(i = 2;i<n;i++) { f3 = f1 + f2; f1 = f2; f2 = f3; } return f3; } int Fabio1(int n) //遞迴 { if(n == 1||n ==2) { return 1; } else { return Fabio(n-1) + Fabio(n-2); } } int main() { for(int i=1;i<7;i++) { printf("%2d",Fabio(i)); } printf("\n"); for(int i=1;i<7;i++) { printf("%2d",Fabio1(i)); } printf("\n"); return 0; }
相關推薦
【C語言】斐波那契數列的兩種演算法(迴圈,遞迴)
#include<stdio.h> int Fabio(int n) //迴圈 { int i; int f1 = 1; int f2 = 1; int f3 = 1; for(i = 2;i<n;i++) { f3 = f1 + f
斐波那契數列兩種演算法的時間複雜度
斐波那契數列簡介: 斐波那契數列(Fibonacci sequence),又稱黃金分割數列、因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是這樣一個數列:1、1、2、3、5、8、13、21、34、……
【程式設計5】斐波那契數列 + 遞迴+LeetCode50
傳送門:https://leetcode-cn.com/problems/powx-n/ 一、LeetCode 50. Pow(x, n) 1、題目描述 實現 pow(x, n) ,即計算 x 的 n 次冪函式。 2、示例 示例 1: 輸入: 2.00000, 1
C語言實現斐波那契數列的兩種方法(遞迴和迭代)
兩種方法實現斐波那契數列,遞迴實現起來稍簡單些,思路也清晰些,但執行效率顯然不如迭代 下面是編譯通過的兩種方式實現斐波那契數列的C語言程式碼:/* * fibanacci.c * * Created on: 2015-3-16 * Author: flo
C語言 java 斐波那契數列
斐波那契數列(Fibonacci sequence),又稱黃金分割數列、 因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入, 故又稱為“兔子數列”,指的是這
斐波那契數列兩種解法
數列:1,1,2,3,5,8,13,21,34,55…….,被稱為斐波那契數列。 斐波那契數列特點:第一、第二個數為1,從第三個數開始,該值等於其前面兩個數之和。 本文主要解決計算第N個斐波那契數的值。 1. 遞迴 /** * 斐波那契數列
【劍指offer】斐波那契數列 遞迴 迴圈 時間 c++
題目:大家都知道斐波那契數列,現在要求輸入一個整數n,請你輸出斐波那契數列的第n項(從0開始,第0項為0)。n<=39 思路:可以用兩種方法實現,這裡遞迴的辦法因為有太多重複的計算會超時(計算n=39,需要4s左右,題目要求1s),遂改用迴圈語句寫(經測試n=39時,完全小於1s),下面的程式碼中也給
【C++】斐波那契數列前N項的和遞迴與非遞迴演算法
定義:斐波那契數列(Fibonacci sequence),又稱黃金分割數列、因數學家列昂納多·斐波那契以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是這樣一個數列:0、1、1、2、3、5、8、1
遞歸的應用C語言實現 斐波那契函數
bsp std 技術 顯示 斐波那契數 cnblogs 分享 pri nbsp #include "stdio.h" int Fbi(int i) /* 斐波那契的遞歸函數 */{ if( i < 2 ) return i == 0 ? 0 : 1;
【洛谷P1962 斐波那契數列】矩陣快速冪+數學推導
公式 lin esp inline i++ out cin def res 來提供兩個正確的做法: 斐波那契數列雙倍項的做法(附加證明) 矩陣快速冪 一、雙倍項做法 在偶然之中,在百度中翻到了有關於斐波那契數列的詞條(傳送門),那麽我們可以發現一個這個規律$ \fra
【演算法 in python | DP】斐波那契數列vs卡塔蘭數列
1. 斐波那契數列 公式: 應用:爬樓梯 假設你正在爬樓梯。需要 n 階你才能到達樓頂。每次你可以爬 1 或 2 個臺階。你有多少種不同的方法可以爬到樓頂呢? class Solution: def climbStairs(self, n):
【劍指offer】斐波那契數列非遞迴求解第N項
public class Solution { public int Fibonacci(int n) { //錯誤輸入處理 if
【劍指offer】斐波那契數列非遞歸求解第N項
非遞歸 acc 斐波那契 錯誤 bsp fibonacci 更新 off for public class Solution { public int Fibonacci(int n) { //錯誤輸入處理 if(n<0) return
【劍指offer第七題】斐波那契數列
題目描述 大家都知道斐波那契數列,現在要求輸入一個整數n,請你輸出斐波那契數列的第n項(從0開始,第0項為0)。 n<=39 剛開始覺得輸入為一個數,然後找到這個數在斐波那契數列中的位置
【劍指offer{7-10}】斐波那契數列、跳臺階、變態跳臺階、矩形覆蓋
斐波那契數列、跳臺階、變態跳臺階、矩形覆蓋題目描述C++程式碼跳臺階題目描述C++程式碼變態跳臺階題目描述C++程式碼矩形覆蓋題目描述C++程式碼 注:思路均是動態規劃,用中間陣列dp存放計算值,如果
【2018/10/08測試T1】【SOJ 2175】斐波那契
【題目】 題目描述: 斐波那契數列又稱兔子數列,可以通過以下方式產生:一開始只有一隻兔子,一個月之後這隻兔子每個月會繁殖出另一隻兔子。之後每隻兔子出生後都按照以上規則繁殖。我們把每個月的兔子的數量作為數列中的數就可以得到斐波那契數列。 現在草原上有 nnn 只兔
【NOIP模擬】斐波那契+序列+柵欄
T1: Hash 程式碼(map實現): #include <bits/stdc++.h> #include <tr1/unordered_map> using namespace std; using namespace std:
【數論】斐波那契數列求和公式
斐波那契數列: F(n)=F(n-1)+F(n-2); 其中, F1=1, F2=1. 斐波那契數列求和公式: Sn = 2F(n) + F(n-1) - 1 Sn = F1 + F2 + F3 +……+
JZOJ-senior-4627. 【NOIP2016提高A組模擬7.15】斐波那契數列
Time Limits: 1000 ms Memory Limits: 524288 KB Description Input Output Sample Input 5 10 Sample O
【轉】斐波那契數列取模(大數)分治演算法
此中測試資料n是整數侷限內。 這個題目,主如果用到很關鍵的一個數學常識,斐波那契數列的求法,可以轉換為矩陣的連乘,矩陣的n此方演算法又可以用分治的演算法。 並且又有理論根據:(n*m)%c=[ (n%c)*(m%c) ]%c ; (n+m)%c=[ (n%c)+(m%c) ]%c ,所以過程中的成果可以