LeetCode :766. 托普利茨矩阵--Python

如果一个矩阵的每一方向由左上到右下的对角线上具有相同元素,那么这个矩阵是托普利茨矩阵

给定一个 M x N 的矩阵,当且仅当它是托普利茨矩阵时返回 True

说明:

  1.  matrix 是一个包含整数的二维数组。
  2. matrix 的行数和列数均在 [1, 20]范围内。
  3. matrix[i][j] 包含的整数在 [0, 99]范围内。

进阶:

  1. 如果矩阵存储在磁盘上,并且磁盘内存是有限的,因此一次最多只能将一行矩阵加载到内存中,该怎么办?
  2. 如果矩阵太大以至于只能一次将部分行加载到内存中,该怎么办?
    class Solution(object):
        def isToeplitzMatrix(self, matrix):
            """
            :type matrix: List[List[int]]
            :rtype: bool
            """
            a=len(matrix)
            b=len(matrix[0])
            m=matrix[0]
            j=b-1
            for i in range(1,a):
                if(matrix[i][1:]==m[:j]):
                    m=matrix[i]
                    continue
                else:
                    return False
    
            return True
    class Solution(object):
        def isToeplitzMatrix(self, matrix):
            """
            :type matrix: List[List[int]]
            :rtype: bool
            """
            
            row=len(matrix)
            col=len(matrix[0])
            for i in range (0,row-1):
                for j in range (0,col-1):
                    if matrix[i+1][j+1]!=matrix[i][j]:
                        return False
            return True

猜你喜欢

转载自blog.csdn.net/weixin_38715903/article/details/88803866