动态规划法——斐波那契数列(填表)

【实例一】

斐波那契数列  采用自底向上(填表)的方式

备忘录式详见:

https://blog.csdn.net/qq_61993592/article/details/121888912?spm=1001.2014.3001.5501

【问题描述】

输入:n

输出:斐波那契数列对应的F(n)的值

 【问题分析】

根据斐波那契数列的性质可得出以下递推式

【算法描述】

初始化fib[0]=0;fib[1]=1,fib[2]=2

输入:n

输出:斐波那契数列对应的F(n)的值

当n<=2时,return 1;

当n>2时;

将计算所得的值放入数组fib[]中;

循环计算每一个值fib[i] = fib[i - 1] + fib[i - 2];

return fib[n];

 【算法实现】

#include<stdio.h>

int fib[100] = { 0, 1, 1};                           //初始化表格元素

int F(int n)
{
	if (n < 2) return n;
	else
	{
		for (int i = 2; i <= n ; i++)
		{
			fib[i] = fib[i - 1] + fib[i - 2];        //计算填表
		}
		return fib[n];
	}
}

int main()
{
	int n;
	scanf("%d", &n);
	int result = F(n);
	printf("%d", result);
}

【运行结果】

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值