java数据结构与算法刷题-----LeetCode766. 托普利茨矩阵

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846
解题思路
  1. 这道题只要换一种理解方式,瞬间就会变的很简单。
  2. 题目描述是每个元素左上和右下对角线元素都相同。但是,我们发现除了第一行和第一列外,每个元素的左上角元素都与它相同。
  3. 所以这道题可以换一种理解方式。除了第一行和第一列的元素以外的元素,如果左上角的元素和它不一样,那就不是托普利兹矩阵
代码:时间复杂度O(n*m) 空间复杂度O(1)
java 复制代码
class Solution {
    public boolean isToeplitzMatrix(int[][] matrix) {
        int m = matrix.length, n = matrix[0].length;//获取行和列
        //从第二行第二列开始,判断是否和左上角元素一致,如果不是,则不满足条件
        //因为第一行和第一列没有左上角元素,所以跳过
        for(int i = 1;i<m;i++){
            for(int j = 1; j<n;j++){
                if(matrix[i][j] != matrix[i-1][j-1]) return false;
            }
        }
        //如果每个元素,都满足和左上角元素一致,那么返回true
        return true;
    }
}
相关推荐
weixin_BYSJ19877 分钟前
【计算机毕设】基于Spring_Boot_Vue的马拉松报名与选手成绩追踪系统05445
java·vue.js·spring boot·学习·spring·django·课程设计
重生之小比特16 分钟前
【算法拾光】滑动窗口|长度最小的子数组 + 无重复字符的最长子串
算法
weixin_3077791322 分钟前
C++代码实现MATLAB中的fitnlm函数功能
开发语言·c++·算法·matlab
雪落漂泊26 分钟前
C++算法:双指针篇(下)
数据结构·c++·算法
Shaoshing33 分钟前
消息类型
java
2301_322414280438 分钟前
springboot学生课堂出勤统计系统15835-计算机毕设 原创(免费领源码+部署教程+开发环境)
java·mysql·随机森林·微信小程序·uni-app·微信开发者工具·推荐算法
程序员夏洛2 小时前
VMware Workstation Pro 卸载失败:安装向导提前结束、错误 1603 的排查与解决
java
User_芊芊君子2 小时前
【JavaEE初阶 - 网络原理】网络分几层?从自定义协议聊到 DNS
java·网络·java-ee
聚美智数9 小时前
智能结构化识别-图片结构解析-图像结构化解析-照片结构化解析
android·java·数据库
十年Java程序媛9 小时前
Java枚举Enum完整教程|替代静态常量,开发与面试要点
java·开发语言·spring boot·后端·面试