766. 托普利茨矩阵

题目


 

分析

这个题实际上就是上行和下行的整行对比,有一个位的错位而已。
 

解题

class Solution:
    def isToeplitzMatrix(self, matrix: List[List[int]]) -> bool:
        m, n = len(matrix),len(matrix[0])  #取到行列值
        if m == 1 and n == 1: return True
        for i in range(m-1):
            if matrix[i][:-1] != matrix[i+1][1:]:  #第一行的前m-1个元素和下一行的后m-1个元素对比,不相等就返回假
                return False
        
        return True  #全部相等时就返回真

 

复杂度:

时间复杂度:O(mn), 其中循环的时间复杂度是O(m),切片的时间复杂度是O(n).
空间复杂度:O(1), 没有多余空间被开辟.

posted on 2021-02-22 17:49  eryoung2  阅读(50)  评论(0编辑  收藏  举报