题解 | #三角形最小路径和#
三角形最小路径和
https://www.nowcoder.com/practice/c9d44b73dc7c4dbfa4272224b1f9b42c
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param triangle int整型二维数组 * @return int整型 */ public int minTrace (int[][] triangle) { // write code here int n = triangle.length; //因为要从最后一行倒推回来所以数组要多额外一行一列 int[][] dp = new int[n + 1][n + 1]; for (int i = triangle.length - 1; i >= 0; i--) { for (int j = triangle[i].length - 1; j >= 0; j--) { //递推式,倒推回来 dp[i][j] = triangle[i][j] + Math.min(dp[i + 1][j], dp[i + 1][j + 1]); } } return dp[0][0]; } }