递归方法实现斐波那契数列C++

//递归方法实现,如下:
#include "stdafx.h"
#include <iostream>
using namespace std;
void F(int num)
{
    int *p = new int[num],i;
    p[0] = 0;
    p[1] = 1;
    for (i = 2; i < num; i++)
    {
        p[i] = p[i - 1] + p[i - 2];
    }
    cout << endl;
    cout << "输出斐波那契数列如下:" << endl;
    for (i = 0; i < num; i++)
    {
        cout << p[i] << "   ";
    }
}
int main()
{
    int num;
    cout << "请输入你要显示的斐波那契数列元素的个数:";
    cin >> num;
    F(num);
    getchar();
    return 0;
}

这些都是实验室老师喊我们写的作业。

时间: 2025-01-02 09:57:26

递归方法实现斐波那契数列C++的相关文章

非递归方法实现斐波那契数列

//非递归方法实现,如下: #include "stdafx.h" #include <iostream> using namespace std; int main() { int F[100],num; F[0] = 0; F[1] = 1; for (int i = 2; i < 100; i++) { F[i] = F[i - 1] + F[i - 2]; } cout << "请输入你要显示的斐波那契数列的元素数:" <

用递归方法计算斐波那契数列(Recursion Fibonacci Python)

先科普一下什么叫斐波那契数列,以下内容摘自百度百科: 斐波那契数列(Fibonacci sequence),又称黄金分割数列.因意大利数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,指的是这样一个数列:1.1.2.3.5.8.13.21.34...这个数列从第3项开始,每一项都等于前两项之和. 根据以上定义,用python定义一个函数,用于计算斐波那契数列中第n项的数字是多少: def fib_recur(n): if n==0 or n==1 : r

Python迭代与递归方法实现斐波拉契数列

首先是迭代的方法实现: def f(n): f1, f2, fn = 1, 1, 1 while n>2: fn = f1 + f2 f1 = f2 f2 = fn n = n - 1 return fn 然后用递归的方法实现: def f(n): if n == 1: return 1 if n == 2: return 1 else: return f(n - 1 ) + f(n - 2) 很明显,此时递归的方法比迭代更简单更易懂

不用递归方法实现斐波那契数列,输入数字n 将会输出该数列的第n个数字

#include<stdio.h>int main(){ int a = 0; int b = 0; scanf("%d", &a); b = fib(a); printf("%d\n", b); system("pause"); return 0;} int fib(int n){ int num1 = 1; int num2 = 1; int num3 = 0; if (n <= 2) {  return 1; } 

以计算斐波那契数列为例说说动态规划算法(Dynamic Programming Algorithm Overlapping subproblems Optimal substructure Memoization Tabulation)

动态规划(Dynamic Programming)是求解决策过程(decision process)最优化的数学方法.它的名字和动态没有关系,是Richard Bellman为了唬人而取的. 动态规划主要用于解决包含重叠子问题的最优化问题,其基本策略是将原问题分解为相似的子问题,通过求解并保存重复子问题的解,然后逐步合并成为原问题的解.动态规划的关键是用记忆法储存重复问题的答案,避免重复求解,以空间换取时间. 用动态规划解决的经典问题有:最短路径(shortest path),0-1背包问题(K

【Python】Python实现斐波那契数列

本节主要实现以下目标: 1.递归方法输出斐波那契数列第n个元素的值 2.用迭代器和生成器获取前n个斐波那契数列列表 3.将两种方法写在同一类中 1.递归方法输出斐波那契数列第n个元素的值 2.用迭代器和生成器获取前n个斐波那契数列列表 3.将两种方法写在同一类中 原文地址:https://www.cnblogs.com/haizhibin1989/p/9158935.html

使用Python实现斐波那契数列

1.递归方法输出斐波那契数列第n个元素的值 2.用迭代器和生成器获取前n个斐波那契数列列表 3.将两种方法写在同一类中 原文地址:https://www.cnblogs.com/legendjaking/p/10587314.html

计算斐波那契数列的性能对比:Python,Java,Go

??本文采用递归办法来计算斐波那契数列中的第38项,用于对于三种计算机语言的计算性能,这三种语言为:Python,Java,Go. ??我们采用递归法来求解斐波那契数列的第n项f(n),其算法描述如下: function fib(n) if n = 0 return 0 if n = 1 return 1 return fib(n ? 1) + fib(n ? 2) 对于公平起见,我们利用三种程序计算f(38),运行100遍,得到平均耗时,作为性能对比. ??Python程序如下: # -*-

【剑指offer】斐波那契数列

题目1描述: 写一个函数,输入n,求斐波那契数列的第n项.斐波那契数列的定义如下: f(n) = 0 (n = 0);  f(n) = 1 (n = 1);  f(n) = f(n-1)+f(n-2) (n > 1); 分析描述: 在大多数的C语言教科书中,一般会用递归求斐波那契数列.代码如下: long long Fibonacci(unsigned int n) { if(n <= 0) return 0; if(n <= 1) return 1; return Fibonacci(