【力扣hot100题】(063)搜索二维矩阵

看到这题我就想到之前被我当作这题做的【力扣hot100题】(020)搜索二维矩阵Ⅱ

其实是完全不一样的两题,个人觉得这道题更简单也更考验基础,那道题思路更难想到但代码更好写。

两个二分查找结束,要注意的是第一个二分查找找的是不大于target但最接近的那个数,和上一题不一样。

cpp 复制代码
class Solution {
public:
    bool searchMatrix(vector<vector<int>>& matrix, int target) {
        int left=0;
        int right=matrix.size()-1;
        int result=0;
        while(left<=right){
            int mid=(left+right+1)/2;
            if(matrix[mid][0]<target) {result=mid;left=mid+1;}
            else if(matrix[mid][0]>target) right=mid-1;
            else return 1;
        }
        left=0;
        right=matrix[0].size()-1;
        while(left<=right){
            int mid=(left+right+1)/2;
            if(matrix[result][mid]<target) left=mid+1;
            else if(matrix[result][mid]>target) right=mid-1;
            else return 1;
        }
        return 0;
    }
};
相关推荐
前端拿破轮9 分钟前
🤡🤡🤡面试官:就你这还每天刷leetcode?连四数相加和四数之和都分不清!
算法·leetcode·面试
地平线开发者34 分钟前
征程 6|工具链量化简介与代码实操
算法·自动驾驶
DoraBigHead40 分钟前
🧠 小哆啦解题记——谁偷改了狗狗的台词?
算法
Kaltistss41 分钟前
240.搜索二维矩阵Ⅱ
线性代数·算法·矩阵
轻语呢喃1 小时前
每日LeetCode:合并两个有序数组
javascript·算法
大熊猫侯佩2 小时前
Swift 数学计算:用 Accelerate 框架让性能“加速吃鸡”
算法·swift
杰克尼2 小时前
2. 两数相加
算法
无聊的小坏坏2 小时前
单调栈通关指南:从力扣 84 到力扣 42
c++·算法·leetcode
_Coin_-2 小时前
算法训练营DAY29 第八章 贪心算法 part02
算法·贪心算法
阿维同学2 小时前
自动驾驶关键算法深度研究
人工智能·算法·自动驾驶