算法学习(二)——动态规划初步

算法学习(二)——动态规划初步算法学习(二)——动态规划初步参考: 算法-动态规划 Dynamic Programming–从菜鸟到老鸟 动态规划(Dynamic Programming)基础目录前言核心小例题:斐契那波数列问题PowerOJ 1027:买花瓶(简单动态规划DP)解题前言在刚上大一的时候,刚接触C语言的我,竟然有着一颗ACMer的梦,当然...
摘要由CSDN通过智能技术生成

算法学习(二)——动态规划初步

参考:
算法-动态规划 Dynamic Programming–从菜鸟到老鸟
动态规划(Dynamic Programming)基础

## 前言 在刚上大一的时候,刚接触C语言的我,竟然有着一颗ACMer的梦,当然,最后磨灭了。记得当时一个ACM的学长给我说,让我先把动态规划学习了……呃,这么久了,还是第一次看动态规划。当然,现在还是看到最简单的动态规划。 ## 核心 首先说动态规划算法的核心吧,这也是我看完大神的博客以后并且知道什么是动态规划之后了解到的第一个知识: 首先是一个小例子 >A “1+1+1+1+1+1+1+1 =?” A : “上面等式的值是多少” B : 计算 “8!” A 在上面等式的左边写上 “1+” A : “此时等式的值为多少” B : quickly “9!” A : “你怎么这么快就知道答案了” A : “只要在8的基础上加1就行了” A : “所以你不用重新计算因为你记住了第一个等式的值为8!动态规划算法也可以说是 ‘记住求过的解来节省时间’”

这个小例子其实已经可以阐述动态规划的核心了:记住已经解决过的子问题的解

小例题:斐契那波数列问题

相信大家都知道美国电影里的FBI,可是大家是否知道意大利数学家斐波那契提出的著名的FIB数列呢,其定义如下:对于正整数数列A[n]有
A [ 1 ] = 1 , A [ 2 ] = 1 , A [ N ] = A [ N − 1 ] + A [ N − 2 ] ( N > 2 ) A[1] = 1, A[2] = 1, A[N] = A[N-1] + A[N-2] (N>2) A[1]=1,A[2]=1,A[N]=A

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值