Leetcode 766. 托普利茨矩阵(可以,一次过)
Published on 2022-05-27 09:37 in 分类: C/C++ with 萧海~
分类: C/C++

Leetcode 766. 托普利茨矩阵(可以,一次过)

    在这里插入图片描述
    给你一个 m x n 的矩阵 matrix 。如果这个矩阵是托普利茨矩阵,返回 true ;否则,返回 false 。

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

    示例 1:

    在这里插入图片描述

    输入:matrix = [[1,2,3,4],[5,1,2,3],[9,5,1,2]]
    输出:true
    解释:
    在上述矩阵中, 其对角线为:
    "[9]", "[5, 5]", "[1, 1, 1]", "[2, 2, 2]", "[3, 3]", "[4]"
    各条对角线上的所有元素均相同, 因此答案是 True 。

    示例 2:
    在这里插入图片描述

    输入:matrix = [[1,2],[2,2]]
    输出:false
    解释:
    对角线 "[1, 2]" 上的元素不同。

    提示:

    • m == matrix.length
    • n == matrix[i].length
    • 1 <= m, n <= 20
    • 0 <= matrix[i][j] <= 99

    进阶:

    • 如果矩阵存储在磁盘上,并且内存有限,以至于一次最多只能将矩阵的一行加载到内存中,该怎么办?
    • 如果矩阵太大,以至于一次只能将不完整的一行加载到内存中,该怎么办?

    Code:

    class Solution {
    public:
    bool isToeplitzMatrix(vector<vector<int>>& matrix) {
    for(int i=0;i<matrix.size();i++)
    {
    vector<int>sub=matrix[i];
    for(int j=0;j<sub.size();j++)
    {
    if((i+1)<matrix.size()&&((j+1)<sub.size()))
    {
    if(matrix[i][j]!=matrix[i+1][j+1])
    {
    return false;
    }
    }
    }
    }
    return true;
    }
    };
    posted @   萧海~  阅读(19)  评论(0编辑  收藏  举报
    相关博文:
    阅读排行:
    · DeepSeek 开源周回顾「GitHub 热点速览」
    · 记一次.NET内存居高不下排查解决与启示
    · 物流快递公司核心技术能力-地址解析分单基础技术分享
    · .NET 10首个预览版发布:重大改进与新特性概览!
    · .NET10 - 预览版1新功能体验(一)
    点击右上角即可分享
    微信分享提示
    电磁波切换