搜尋二維矩陣
阿新 • • 發佈:2021-11-19
題目連結:https://leetcode-cn.com/problems/search-a-2d-matrix
題目描述:
編寫一個高效的演算法來判斷m x n矩陣中,是否存在一個目標值。該矩陣具有如下特性:
每行中的整數從左到右按升序排列。
每行的第一個整數大於前一行的最後一個整數。
示例 1:
輸入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3
輸出:true
示例 2:
輸入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13
輸出:false
提示:
m == matrix.length
n == matrix[i].length
1 <= m, n <= 100
-104 <= matrix[i][j], target <= 104
題解:
class Solution { public: bool searchMatrix(vector<vector<int>>& matrix, int target) { int row = 0; int col = matrix[0].size() - 1; while(row < matrix.size() && col >= 0) { if(matrix[row][col] < target) row++; else if(matrix[row][col] > target) col--; else return true; } return false; } };