zoukankan      html  css  js  c++  java
  • 120. 三角形最小路径和

    题目描述:

          给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。

          例如,给定三角形:

          [
             [2],
             [3,4],
             [6,5,7],
             [4,1,8,3]
           ]
           自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11)。

    题解:

        此类型题使用动态规划,共有三种:

        1):从上往下看,使用一个二维数组;

        2):从上往下看,使用一个一维数组;

        3):从下往上看,使用一个一维数组,以下提供该方法的实现代码:

    public class L120 {
        public int minimumTotal(List<List<Integer>> triangle) {
            int[] minValue = new int[triangle.size()];
            for(int index = 0;index < triangle.size();index++){
                minValue[index] = triangle.get(triangle.size()-1).get(index);
            }
            for(int index01 = triangle.size()-2;index01>=0;index01--){
                for (int index02 = 0;index02<=index01;index02++){
                    minValue[index02] = Math.min(minValue[index02],minValue[index02+1]) + triangle.get(index01).get(index02);
                }
            }
            return minValue[0];
    
        }
    }
  • 相关阅读:
    robots.txt
    procdump和mimikatz工具配合破解windows账户口令
    通过vbs脚本控制方向盘按键
    批处理删除文件或文件夹代码
    彩色线条雨特效html代码
    secureCRT
    chrome 更新flash插件
    python命令行下安装redis客户端
    FastJson使用
    Redis 学习(二)
  • 原文地址:https://www.cnblogs.com/mayang2465/p/11811374.html
Copyright © 2011-2022 走看看