LeetCode #1572. Matrix Diagonal Sum

题目

1572. Matrix Diagonal Sum


解题方法

遍历数组每次累加mat[i][j]和mat[i][len(mat)-1-j],如果j == len(mat) - 1 - j的话就去掉一个mat[i][j],最后返回Sum。
时间复杂度:O(mn)
空间复杂度:O(1)


代码

class Solution:
    def diagonalSum(self, mat: List[List[int]]) -> int:
        Sum = 0
        i = j = 0
        while i < len(mat):
            Sum += mat[i][j] + mat[i][len(mat)-1-j]
            if j == len(mat) - 1 - j:
                Sum -= mat[i][j]
            i += 1
            j += 1
        return Sum
上一篇:LeetCode #1572. Matrix Diagonal Sum


下一篇:用python 替换2D数组的对角线