Talentd
FleetCode

74. Search a 2D Matrix

Medium54.4% acceptance19 companies

You are given an m x n integer matrix matrix with the following two properties:

  • Each row is sorted in non-decreasing order.
  • The first integer of each row is greater than the last integer of the previous row.

Given an integer target, return true if target is in matrix or false otherwise.

You must write a solution in O(log(m * n)) time complexity.

Example 1:

Input: matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3
Output: true

Example 2:

Input: matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13
Output: false

Constraints:

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 100
  • -104 <= matrix[i][j], target <= 104
10:59
Still stuck?Read 4 approaches, or watch a walkthrough.
Open solution
Loading editor…
1class Solution:
2 def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
3
Starter codePython 3Spaces: 4
Examples
Input
[[1,3,5,7],[10,11,16,20],[23,30,34,60]]
3
Input
[[1,3,5,7],[10,11,16,20],[23,30,34,60]]
13
Your code is saved on this device.Solution