All problemsBack
Search a 2D Matrix
mediumYou are given an m x n integer 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 the matrix, or false otherwise.
You must write a solution in O(log(m * n)) time complexity.
Test Cases
Copy an input into themain harness and Run to verifyInput
matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 3Expected Output
trueInput
matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,60]], target = 13Expected Output
falseConstraints
- m == matrix.length
- n == matrix[i].length
- 1 <= m, n <= 100
- -10^4 <= matrix[i][j], target <= 10^4
Hints
Hint 1 — click to reveal
Those two properties together mean the matrix is one sorted array that has been wrapped into rows.
Hint 2 — click to reveal
Treat index i as row i / n and column i % n.
Java Compiler
Powered by OneCompiler. Starter code loads automatically — edit and hit Run.