前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DP动态规划和递归

DP动态规划和递归

原创
作者头像
MarkZhou
修改2021-01-28 15:09:22
4040
修改2021-01-28 15:09:22
举报
文章被收录于专栏:Mark的学习之路

在刷leetcode的时候,因为对DP和递归不是很熟,对两者界限也很模糊。所以看了一些概念以后来写一个日记

DP动态规划:解决一类(离散)优化问题的思路的总称;

这是一类问题的定义,解决这类问题的核心在于找到递推公式 f(x) = f(x-1)+ g(n)

得到递推公式之后,如何计算递推公式存在两种方法:自顶向下和自底向上

自顶向下:能采用递归实现

代码语言:javascript
复制
int Fibonacci(int n)
{
    if(n == 0)
        return 0;
    if(n == 1)
        return 1;
    return Fibonacci(n-1) + Fibonacci(n-2);
}

自底向上:能使用迭代实现

代码语言:javascript
复制
int array[n] = {0};
array[1] = 1;
for (int i = 2; i < n; i++)
    array[i] = array[i-1] + array[i-2];

例子是斐波那契。来自链接

我的一点认识,会在学习的过程中逐步更新和修正

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 在刷leetcode的时候,因为对DP和递归不是很熟,对两者界限也很模糊。所以看了一些概念以后来写一个日记
    • DP动态规划:解决一类(离散)优化问题的思路的总称;
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档