lintcode--数字三角形
来源:互联网 发布:nginx ssl 配置文件 编辑:程序博客网 时间:2024/06/06 03:55
给定一个数字三角形,找到从顶部到底部的最小路径和。每一步可以移动到下面一行的相邻数字上。
注意事项
如果你只用额外空间复杂度O(n)的条件下完成可以获得加分,其中n是数字三角形的总行数。
比如,给出下列数字三角形:
[ [2], [3,4], [6,5,7], [4,1,8,3]]
从顶到底部的最小路径和为11 ( 2 + 3 + 5 + 1 = 11)。
/*
上面是自顶向下的,能否可以自底向上进行,,竟然也可以,这里还不要考虑两个边界的情况,当然上面的其实也可以不考虑的,可以认为是0,这里:triangle[i][j] +=min(triangle[i+1][j] , triangle[i+1][j+1])
*/
public class Solution {
public int minimumTotal(int[][] triangle) {
// write your code here
if(triangle.length==1&&triangle[0].length==1)
return triangle[0][0];
int minnum = Integer.MAX_VALUE;
for(int i=triangle.length-2;i>=0;i--){
for(int j=0;j<triangle[i].length;j++){
triangle[i][j] += Math.min(triangle[i+1][j],triangle[i+1][j+1]);
}
}
minnum = triangle[0][0];
return minnum;
}
}
/*
求出从顶点到底部所有节点的路径,在选取最小的路径和.这里给的是下三角矩阵,A[i][j] += Max{A[i-1][j-1],A[i-1][j]},
对应两个边界的情况:A[i][j] += A[i-1][j]、A[i][j] +=A[i-1][j-1],这样从上向下,在求到最底部时候,找出最小的值。
*/
/*public class Solution {
public int minimumTotal(int[][] triangle) {
// write your code here
if(triangle.length==1&&triangle[0].length==1)
return triangle[0][0];
int minnum = Integer.MAX_VALUE;
for(int i=1;i<triangle.length;i++){
for(int j=0;j<triangle[i].length;j++){
if(j==0){
triangle[i][j]+=triangle[i-1][j];
}else if(j==triangle[i].length-1){
triangle[i][j]+=triangle[i-1][j-1];
}else{//
triangle[i][j]+=Math.min(triangle[i-1][j],triangle[i-1][j-1]);
}
if(i==triangle.length-1)
minnum = Math.min(minnum,triangle[i][j]);
}
}
return minnum;
}
}
*/
- LintCode Triangle 数字三角形
- lintcode-数字三角形-109
- lintcode ----数字三角形
- lintcode triangle 数字三角形
- 数字三角形-LintCode
- lintcode--数字三角形
- 数字三角形-LintCode
- LintCode 数字三角形
- [LintCode 109] 数字三角形(Python)
- Lintcode-动态规划-数字三角形
- LintCode: 109. 数字三角形 Java
- LintCode做题记录- 数字三角形
- LintCode刷题——数字三角形
- LintCode-三角形计数
- lintcode(382)三角形计数
- lintcode 三角形计数
- LintCode之三角形计数
- Lintcode三角形计数
- 认识内部类
- C/C++ 一维数组与指针
- 【leetcode】 4Median of Two Sorted Arrays求两个数组的中位数
- 函数的形参与返回
- 阿里云ECS部署Docker服务
- lintcode--数字三角形
- Installation failed with message Failed to establish session.
- 三种不定高的div垂直居中方式
- Spark踩坑记——Spark Streaming+Kafka
- 智捅马蜂窝Comb
- hdu1240 (bfs)
- 2017 Multi-University Training Contest 7:Hard challenge
- 第二章 Xadmin_View
- 2017年5月iOS招人心得答案总结(高级篇)