766. 托普利茨矩阵
难度简单206收藏分享切换为英文接收动态反馈
给你一个 m x n
的矩阵 matrix
。如果这个矩阵是托普利茨矩阵,返回 true
;否则,返回 false
。
如果矩阵上每一条由左上到右下的对角线上的元素都相同,那么这个矩阵是 托普利茨矩阵 。
示例 1:
1 | 输入:matrix = [[1,2,3,4],[5,1,2,3],[9,5,1,2]] |
示例 2:
1 | 输入:matrix = [[1,2],[2,2]] |
提示:
m == matrix.length
n == matrix[i].length
1 <= m, n <= 20
0 <= matrix[i][j] <= 99
进阶:
如果矩阵存储在磁盘上,并且内存有限,以至于一次最多只能将矩阵的一行加载到内存中,该怎么办?
如果矩阵太大,以至于一次只能将不完整的一行加载到内存中,该怎么办?
对角线+hashMap
矩阵的正对角线的上的元素的 i-j
相同,利用map记录i-j
的值,如果下次遇到这个对角线上的元素并且值不与这个对角线上应有的值相同,那么不满足条件,否则满足条件
1 | class Solution { |
遍历
1 | class Solution { |