首页 > 其他分享 >【数组】LeetCode 剑指 Offer 04. 二维数组中的查找

【数组】LeetCode 剑指 Offer 04. 二维数组中的查找

时间:2023-03-08 09:55:58浏览次数:43  
标签:matrix 04 Offer int length 数组

题目链接

剑指 Offer 04. 二维数组中的查找

思路

借鉴Krahets大神的思路,将矩阵逆时针旋转45°,可以发现其大小性质类似于二叉搜索树。

image

利用这个性质可以很方便的在搜索过程中剪去一行或者一列,加快搜索进度。

代码

class Solution {
    public boolean findNumberIn2DArray(int[][] matrix, int target) {
        if(matrix.length == 0){
            return false;
        }

        int m = matrix.length;
        int n = matrix[0].length;
        int i = 0;
        int j = n - 1;

        while(i < m && j >= 0){
            if(target == matrix[i][j]){
                return true;
            }else if(target < matrix[i][j]){
                j--;
            }else{
                i++;
            }
        }

        return false;
    }
}

标签:matrix,04,Offer,int,length,数组
From: https://www.cnblogs.com/shixuanliu/p/17190919.html

相关文章

  • 剑指 Offer(第 2 版)刷题记录
    前言本文用于整理我个人的剑指offer刷题记录,初学者朋友们可以看一下我的其他记录Leetcode面试高频题分类刷题总结及题解题目哈希表剑指Offer03.数组中重复的数字......
  • 【哈希表】LeetCode 剑指 Offer 03. 数组中重复的数字
    题目链接剑指Offer03.数组中重复的数字思路使用哈希表记录每个数字的出现次数。代码classSolution{publicintfindRepeatNumber(int[]nums){in......
  • 2023/03/04(六)晴,海边
    周六我也睡个懒觉,最后还是我先起的叫的他俩。洗衣服,洗漱吃早饭,先去买体操服,要去学校指定的合作商店去买。之前一个人生活的时候,周边10公里左右范围都逛过了,所以看了学校......
  • 26. 删除有序数组中的重复项
    https://leetcode.cn/problems/remove-duplicates-from-sorted-array/ 26.删除有序数组中的重复项难度简单3051收藏分享切换为英文接收动态反馈给你一个 升序......
  • 剑指 Offer 24. 反转链表
    https://leetcode.cn/problems/fan-zhuan-lian-biao-lcof/定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 示例:输入:1->2->3->4->5->NULL......
  • ubuntu22.04安装mysql
    1.安装sudoaptinstallmysql-server2.设置vim /etc/mysql/mysql.conf.d/mysqld.cnf[mysqld]后加入skip-grant-tables3.重启服务servicemysqlrestart4.免密码......
  • Ubuntu18.04安装Docker完整教程
    1.更新软件源列表sudoaptupdate2.安装软件包依赖sudoaptinstallapt-transport-httpsca-certificatescurlsoftware-properties-common3.在系统中添加Docker的......
  • C#随记04
    面向对象程序设计将数据和对数据的操作看作是一个不可分割的整体,力求将现实问题简单化。尽量复合人们的思维习惯,提高软件的开发效率,并方便后期的维护。对象具有唯一性......
  • ubuntu16.04 pip3显示已经安装,但是用的时候却又显示未安装
    pip3显示未安装我装行吧?What?已装?再试一遍pip3-version,结果还是老样子吐血!好吧,我脚本安装,行了吧输入wgethttps://bootstrap.pypa.io/get-pip.py接着输......
  • java 数组 -创建和添加 (增删改查)25
     创建: packagecom.demo.Array;importjava.util.ArrayList;publicclassday01{/*Arraylist集合的使用细节:创建String,Stringbuilder,A......