剑指 Offer 04. 二维数组中的查找

剑指 Offer 04. 二维数组中的查找

https://leetcode-cn.com/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof/

从数组的右上角开始找起,会发现有类似 BST 的特点。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
func findNumberIn2DArray(matrix [][]int, target int) bool {
if len(matrix) == 0 || len(matrix[0]) == 0 {
return false
}

m, n := len(matrix), len(matrix[0])

for i, j := 0, n - 1; i < m && j >= 0; {
if matrix[i][j] == target {
return true
}
if matrix[i][j] > target {
j--
} else {
i++
}
}

return false
}