Class Solution

  • All Implemented Interfaces:

    
    public final class Solution
    
                        

    120 - Triangle.

    Medium

    Given a triangle array, return the minimum path sum from top to bottom.

    For each step, you may move to an adjacent number of the row below. More formally, if you are on index i on the current row, you may move to either index i or index i + 1 on the next row.

    Example 1:

    Input: triangle = \[\[2],3,4,6,5,7,4,1,8,3]

    Output: 11

    Explanation: The triangle looks like:

    <ins>2</ins>

    <ins>3</ins> 4

    6 <ins>5</ins> 7

    4 <ins>1</ins> 8 3

    The minimum path sum from top to bottom is 2 + 3 + 5 + 1 = 11 (underlined above).

    Example 2:

    Input: triangle = \[\[-10]]

    Output: -10

    Constraints:

    • 1 &lt;= triangle.length &lt;= 200

    • triangle[0].length == 1

    • triangle[i].length == triangle[i - 1].length + 1

    • <code>-10<sup>4</sup><= trianglej<= 10<sup>4</sup></code>

    Follow up: Could you do this using only O(n) extra space, where n is the total number of rows in the triangle?

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      Solution()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final Integer minimumTotal(List<List<Integer>> triangle)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait