题目是来自某讯2016实习生移动客户端开发笔试的一道编程题,如下:
给出一M*N的矩阵,每个格子中都有一个非负整数,只能向右或向下移动,求从左上角到右下角的所有路径中的最大值(每条路径的值为对路径中所进过的格子中的数求和)。
输入格式:
4 5
1 0 0 8 0
0 0 3 0 0
4 0 0 5 0
0 6 0 0 0
之前没怎么接触过动态规划,我自己在实现的时候最先想到的是基于广度优先的思想,效率不高,写起来也麻烦,既然实现了也不怕笑话,我这里贴出来:
本文介绍了一道编程题,要求找到M*N矩阵从左上角到右下角路径的最大价值。作者首先尝试了广度优先搜索的解决方案,然后转向使用动态规划的方法,发现该问题与LeetCode的64. Minimum Path Sum题相似。动态规划解决方案具有更高的效率和简洁的代码。
题目是来自某讯2016实习生移动客户端开发笔试的一道编程题,如下:
给出一M*N的矩阵,每个格子中都有一个非负整数,只能向右或向下移动,求从左上角到右下角的所有路径中的最大值(每条路径的值为对路径中所进过的格子中的数求和)。
输入格式:
4 5
1 0 0 8 0
0 0 3 0 0
4 0 0 5 0
0 6 0 0 0
之前没怎么接触过动态规划,我自己在实现的时候最先想到的是基于广度优先的思想,效率不高,写起来也麻烦,既然实现了也不怕笑话,我这里贴出来:
3856

被折叠的 条评论
为什么被折叠?