从最短路算法思考动态规划思想

动态规划的理论基石是最优性原理,它的思考方式采用的是递归思想,但是绝不可以直接用递归思想去实现,嵌套调用会非常非常慢。它真正的实现思路是先用递归思想逆着思考,然后用顺序实现方法顺向实现,这一点在最短路算法中已经有了非常生动直观的体现。

为什么基于数据本身结构(例如图结构)的动态规划算法往往是最有效的方法?

因为如果我们完全抛弃数据本身带着的结构,而把问题上升为一个抽象的数学问题,那么各个元素组合成的解集合会变得非常大,造成问题变成了一个NP难问题,然而解集合中存在大量的不可能出现的解,如果我们借助问题本身带有的数据结构的话。

很多图论算法都是借用了动态规划的思想来实现的,通过将问题自身携带的数据结构读入计算机,然后基于这些数据结构设计和实现算法,在隐枚举的过程中,由于是顺着问题本身的数据结构搜素问题的解,不知不觉跳过了大量的不可能出现的组合解,使得问题可以在多项式时间内被求解出来

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我为峰666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值