Sign In
You are coding as a Guest. Sign in with your RoleNest account to permanently track your streak, earn XP, and climb the Campus Leaderboard!
Sign In with RoleNest
🔥Search a 2D Matrix: Row-Column Binary SearchMedium
MediumBinary Search•Acceptance: 49.6%

Search a 2D Matrix: Row-Column Binary Search

Real-World Engineering Context
B-Tree index leaf page traversal in PostgreSQL and SQLite disk storage engines.
You are given an `m x n` integer matrix `matrix` with the following two properties: 1. Each row is sorted in non-decreasing order. 2. 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 in O(log(m * n)) time.

Sample Test Cases

Input: [[[1,3,5,7],[10,11,16,20],[23,30,34,60]],3]
Expected: true
Input: [[[1,3,5,7],[10,11,16,20],[23,30,34,60]],13]
Expected: false
Input: [[[5]],5]
Expected: true

Constraints

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 100
  • -10^4 <= matrix[i][j], target <= 10^4