动态规划之最大矩阵路径
2016-04-28 17:14
267 查看
下面看代码:
import java.util.Scanner; //动态规划之求矩阵的最大路径和或者最小路径也可以 //递推公式:dp[i][j]=max(dp[i][j-1] , dp[i-1][]j])+map[i][j]; public class main { static int n;//矩阵的行 static int m;//矩阵的列 static int[][] map;//用来存储矩阵信息 static int[][] dp=new int[100][100]; public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); n=sc.nextInt(); m=sc.nextInt(); map=new int[n+1][m+1]; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { map[i][j]=sc.nextInt(); } } for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { dp[i][j]=Math.max(dp[i-1][j], dp[i][j-1])+map[i][j]; } } sop(dp); } public static void sop(int[][] arr){//dayin打印二维数组的 for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { System.out.print(arr[i][j]+"\t"); } System.out.println(); } } }
在这里我并没有直接输出最大路径 而是输出了 dp数组以方便理解递推公式。
有缺点望悉心指出,thanks。
相关文章推荐
- 0428 团队2.0
- 浅析软件架构
- 对软件构造的认识
- spring session redis做session共享
- 计算2个坐标点之间的距离
- rails模块学习之Controller
- Unity网络教程翻译(一)从零开始编写一个网络游戏
- 将23用二进制进行表示
- 将23用二进制进行表示
- spi时序的极性和相位
- er进制!!!!!
- 16进制
- mysql中取当前日期并格式化
- TP LINK WN822N
- maven中的 dependencies 和 dependencyManagement 的区别 以及scope的取值说明
- QT写 读配置文件
- cJSON库源码分析
- 创业网友提问:
- 你所不了解的程序员内心的温柔
- java常量池概念