最小成本路径的 Python 程序


在本文中,我们将了解下面给出的问题陈述的解决方案。

**问题陈述**- 给定一个成本矩阵和一个位置 (m, n),我们需要找到从 (0, 0) 到达 (m, n) 的最小成本路径的成本。每个单元格表示从一个单元格移动到另一个单元格的成本。

现在让我们在下面的实现中观察解决方案 -

示例

 在线演示

# dynamic approach
R = 3
C = 3
def minCost(cost, m, n):
   # initialization
   tc = [[0 for x in range(C)] for x in range(R)]
   # base case
   tc[0][0] = cost[0][0]
   # total cost(tc) array
   for i in range(1, m + 1):
      tc[i][0] = tc[i-1][0] + cost[i][0]
   # tc array
   for j in range(1, n + 1):
      tc[0][j] = tc[0][j-1] + cost[0][j]
   # rest tc array
   for i in range(1, m + 1):
      for j in range(1, n + 1):
         tc[i][j] = min(tc[i-1][j-1], tc[i-1][j], tc[i][j-1]) + cost[i][j]
   return tc[m][n]
# main
cost = [[1, 5, 3],
        [7, 7, 4],
        [8, 5, 3]]
print("Total Cost:",minCost(cost, 2, 1))

输出

Total Cost: 13

所有变量都在局部范围内声明,它们在上面图表中可见。

结论

在本文中,我们了解了如何为最小成本路径制作 Python 程序

更新日期: 2019 年 12 月 20 日

703 浏览次数

开启你的 职业生涯

完成课程即可获得认证

入门
广告