dynamic-programming - 这个最优子结构方程正确吗?
问题描述
给定填充有非负数的 amxn 网格,找到一条从右下角到左上角的路径,该路径最小化沿其路径的所有数字的总和。
我们从右下角或 (m,n) 开始,我们的目标是到达位置 (1,1) 或左上角。
我只是有点困惑,我不知道我是否正确自上而下的方法是最佳子结构如下吗?
CostToMove(i,j) = Min(CostToMove(i-1,j), CostToMove (i, j+1)) + Cost(i,j)
解决方案
你似乎有很好的方法。您需要解决一个小问题:CostToMove (i, j+1)
. 在这里你是向右走而不是向左走,所以我猜你想说CostToMove (i, j-1)
推荐阅读
- java - 本地通知侦听器未执行操作
- c# - 如何从在 startup.cs 中构建 serviceProvider 的类库中获取 IServiceProvider?
- c# - 发布者的 RabbitMQ Ack
- python - 在 tkinter 后台执行功能
- vue.js - Vue-Router 在选择选项中不起作用
- filter - 卷积效果从 Gimp 版本 2.8.22 更改为 2.10.18
- c# - 组合框值发生变化,但在视觉上 SelectedValue 保持不变
- java - MongoDB的查询条件传入时按日期降序排序时如何限制(1)记录
- java - 使用java生成drools drl文件
- mysql - Crontab 不能与 `mysqldump: command not found` 一起工作 mac osx