剑指 Offer 04. 二维数组中的查找
//给二维数组赋值方式
//var a = [][]int{
// {1,3,4,5},
// {2,5,6,8},
//}
//这就构成了一个2行4列的二维数组
func findNumberIn2DArray(matrix [][]int, target int) bool {
rows := len(matrix)
//特殊条件
if rows == 0 {
return false
}
column := len(matrix[0])
i := 0
j := column -1
//一定要注意else if 和 if 的区别
//这里每一次if条件判断伴随着条件表达式元素i/j的数值变化,所以必须使用else if
//从matrix数组右上顶点开始遍历
for i<rows && j>=0{
if target > matrix[i][j]{
i++
}else if target < matrix[i][j]{
j--
}else if target == matrix[i][j]{
return true
}
}
return false
}