leetcode-15双周赛-1289-下降路径最小和
2024-09-08 05:53:49
题目描述:
方法一:动态规划 O(N^3)
class Solution:
def minFallingPathSum(self, arr: List[List[int]]) -> int:
n = len(arr)
for i in range(1,n):
for j in range(n):
arr[i][j] = arr[i][j] + min(arr[i-1][0:j] + arr[i-1][j+1:])
return min(arr[-1])
优化:O(n^2logn)
class Solution:
def minFallingPathSum(self, arr: List[List[int]]) -> int:
n = len(arr)
for i in range(1,n):
a,b = sorted(arr[i-1])[::2]
for j in range(n):
arr[i][j] += a if arr[i - 1][j] != a else b
return min(arr[-1])
优化:O(n^2)
class Solution:
def minFallingPathSum(self, arr: List[List[int]]) -> int:
n = len(arr)
for i in range(1,n):
a,b = float("inf"),float("inf")
for j in arr[i-1]:
if j < a:
if a != float("inf"):
b = a
a = j
elif j < b:
b = j
for j in range(n):
arr[i][j] += a if arr[i - 1][j] != a else b
return min(arr[-1])
最新文章
- Shell_3 函数
- Linux CentOS6.5下安装Oracle ASM
- The connection to adb is down, and a severe error has occured.问题解决方法小结
- salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解
- NGUI Atlas, Atlas Type Reference
- 【SpringMVC】SpringMVC系列14之SpringMVC国际化
- opencv,关于物体检测
- 软件工程 speedsnail 冲刺3
- android中数据存储的contentprovider的使用方法
- pop动画使用示例
- Mock Server文章链接
- Linux学习-汇总
- React 记录(4)
- HDU46093-idiots
- Day26--Python--包
- win7用VMware安装CentOs7搭建Linux环境
- Html table、thead、tr、th、td 标签
- [UGUI]修改顶点
- STL 算法中函数对象和谓词
- 使用Python操作Memcached