日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

LeetCode Online Judge 题目C# 练习 - Minimum Path Sum

發布時間:2025/6/17 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LeetCode Online Judge 题目C# 练习 - Minimum Path Sum 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.
Note: You can only move either down or right at any point in time.

遞歸:

1 public static int MinimumPathSum(List<List<int>> grid) 2 { 3 int m = grid.Count; 4 int n = grid[0].Count; 5 6 return MinimumPathSumRecursive(grid, m - 1, n - 1); 7 } 8 9 public static int MinimumPathSumRecursive(List<List<int>> grid, int x, int y) 10 { 11 if (x == 0 && y == 0) 12 { 13 return grid[0][0]; 14 } 15 else if (x == 0) 16 { 17 return MinimumPathSumRecursive(grid, 0, y - 1) + grid[0][y]; 18 } 19 else if (y == 0) 20 { 21 return MinimumPathSumRecursive(grid, x - 1, 0) + grid[x][0]; ; 22 } 23 else 24 { 25 return Math.Min(MinimumPathSumRecursive(grid, x - 1, y), MinimumPathSumRecursive(grid, x, y - 1)) + grid[x][y]; 26 } 27 }

DP:

1 public static int MinimumPathSumDP(List<List<int>> grid) 2 { 3 int m = grid.Count; 4 int n = grid[0].Count; 5 6 int[,] ret = new int[m, n]; 7 8 for (int i = 0; i < m; i++) 9 { 10 for (int j = 0; j < n; j++) 11 { 12 if (i == 0 && j == 0) 13 { 14 ret[i, j] = grid[0][0]; 15 continue; 16 } 17 if (i == 0) 18 { 19 ret[i, j] = ret[i, j - 1] + grid[i][j]; 20 continue; 21 } 22 if (j == 0) 23 { 24 ret[i, j] = ret[i - 1, j] + grid[i][j]; 25 continue; 26 } 27 28 if (ret[i - 1, j] <= ret[i, j - 1]) 29 { 30 ret[i, j] = ret[i - 1, j] + grid[i][j]; 31 continue; 32 } 33 else 34 { 35 ret[i, j] = ret[i, j - 1] + grid[i][j]; 36 continue; 37 } 38 39 } 40 } 41 42 return ret[m - 1, n - 1]; 43 }

代碼分析:

  經典的遞歸(Top-down),DP(Bottom-up)題。DP一般都比遞歸來的效率高,主要是每次function 調用都新創建一個stack,但是有些問題遞歸用的巧,也是讓人為之一震!

  

轉載于:https://www.cnblogs.com/etcow/archive/2012/09/29/2707935.html

總結

以上是生活随笔為你收集整理的LeetCode Online Judge 题目C# 练习 - Minimum Path Sum的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。