遞歸的應用C語言實現 斐波那契函數
#include "stdio.h"
int Fbi(int i) /* 斐波那契的遞歸函數 */
{
if( i < 2 )
return i == 0 ? 0 : 1;
return Fbi(i - 1) + Fbi(i - 2); /* 這裏Fbi就是函數自己,等於在調用自己 */
}
int main()
{
int i;
int a[40];
printf("叠代顯示斐波那契數列:\n");
a[0]=0;
a[1]=1;
printf("%d ",a[0]);
printf("%d ",a[1]);
for(i = 2;i < 40;i++)
{
a[i] = a[i-1] + a[i-2];
printf("%d ",a[i]);
}
printf("\n");
printf("遞歸顯示斐波那契數列:\n");
for(i = 0;i < 40;i++)
printf("%d ", Fbi(i));
return 0;
}
遞歸的應用C語言實現 斐波那契函數
相關推薦
遞歸的應用C語言實現 斐波那契函數
bsp std 技術 顯示 斐波那契數 cnblogs 分享 pri nbsp #include "stdio.h" int Fbi(int i) /* 斐波那契的遞歸函數 */{ if( i < 2 ) return i == 0 ? 0 : 1;
C語言實現斐波那契數列的兩種方法(遞迴和迭代)
兩種方法實現斐波那契數列,遞迴實現起來稍簡單些,思路也清晰些,但執行效率顯然不如迭代 下面是編譯通過的兩種方式實現斐波那契數列的C語言程式碼:/* * fibanacci.c * * Created on: 2015-3-16 * Author: flo
【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
GO語言實現斐波那契數列(Fibonacci)
斐波那契數列指的是這樣一個數列: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144… 這個數列從第3項開始,每一項都等於前兩項之和。 package main imp
使用遞迴實現斐波那契列數中的20個月有多少隻兔子
package it.casts.homework; //5.使用遞迴實現斐波那契列數中的20個月有多少隻兔子; public class Test05 { public static void main(String[] args) { int method = method(20);
php遞迴和迭代實現斐波那契數列
<?php //1 1 2 3 5 8 13 21 34 55 //迭代 function fib($n){ if($n<1) return -1; $a[1]=$a[2]=1;
C語言 java 斐波那契數列
斐波那契數列(Fibonacci sequence),又稱黃金分割數列、 因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入, 故又稱為“兔子數列”,指的是這
斐波那契函數
gpo a + b function ror valid err func argument invalid //遞歸解法 function fib(n){ if(n < 1){ throw new Error(‘invalid argumen
C語言編程實現斐波那契數列(遞歸與非遞歸)
() code tdi clu return include 位置 c語言編程 數組 一.非遞歸 <1>數組 #include<stdio.h> #include<stdlib.h> int main() { int a[1000
C語言經典演算法(八)——遞迴實現斐波那契數列的兩種方法
後繼續整理演算法並寫出自己的理解和備註。 C++實現的:遞迴實現斐波那契數列 1、 遞迴實現斐波那契數列Fib(n) <1> 題目描述:輸入n值,求解第n項的斐波那契數列值 <2> 方法一:概念法 <3> 方法二:遞迴法 斐波那契數列值是值1
Python 遞歸實現斐波那契數列
斐波那契數列Python 遞歸實現斐波那契數列def fab(n): if n==1 or n==2: return 1 else: return fab(n-1)+fab(n-2)num=int(input(‘請輸入數字:‘))result=fab(num)print
C語言、Python實現斐波那契數(Fibonacci)
1、C語言實現 有一對兔子,從出生後第3個月起每個月都生一對兔子。小兔子長到第3個月後每個月又生一對兔子。假設所有兔子都不死,問每個月的兔子總數為多少? #include<stdio.h> int main() { int f1=1,f2=1,f3; int i;
[c語言]用遞迴和非遞迴求第n個斐波那契數
程式碼 //1.1遞迴求第n個斐波那契數 #include<stdio.h> int fib(int n) { if(n<=2) return 1; else return fib(n-1)+fib(n-2); } int main
斐波那契數列數組遞歸遞推的時間空間復雜度的分析
FN 斐波那契數 遞歸 GC com get 5G cso lan 3g0gpapcgj傅節滌澳浩日換嶄睹速《http://weibo.com/p/230927987595257304584192》 nfdc5g6tss諒漬狙庇淤律臼忠圓賬《http://weibo.co
C++實現斐波那契數列
一個數 ngxin turn 版權 min clu mes bsp In 斐波那契數列(Fibonacci sequence),又稱黃金分割數列、因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是這樣一
python 迭代法和遞迴 實現斐波那契演算法
題目:古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數為多少? 1.程式分析: 兔子的規律為數列1,1,2,3,5,8,13,21…. 由規律可知: f(n) = f(n-1)+f(n-2) 符合斐波那契數
Java實現斐波那契數列(遞迴、遍歷、矩陣)
什麼是斐波那契數列 其實很簡單,可以理解為: F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*) 比如這樣一個數列:1、1、2、3、5、8、13、21、34、…… 有興趣可以看百度百科 下面我們就來實現,給定一個n,求f(n)的值
python實現斐波那契數列 用遞迴實現求第N個菲波那切數列
斐波那契數列即著名的兔子數列:1、1、2、3、5、8、13、21、34、…… 數列特點:該數列從第三項開始,每個數的值為其前兩個數之和,用python實現起來很簡單: a=0 b=1 while b < 1000: print(b) a, b = b, a+b
用遞迴和非遞迴實現斐波那契數列
斐波那契數列(Fibonacci sequence),又稱黃金分割數列、因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是這樣一個數列:1、1、2、3、5、8、13、21、34、……在數學上,斐波納契數列
遞迴演算法實現斐波那契數列
假定兔子在出生兩個月後,就有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有兔子都不死,那麼一年以後可以繁殖多少對兔子? 這就是著名的斐波那契數列,也稱作兔子數列。 一、問題分析 剛開始,有1對幼兔,兔子總對數為1; 經過一個月後,幼兔長為小兔,兔子總對數為1