思路:从右上角开始往左边下边移动。 如果从0,0开始,判断一个数如果处于两个数之间了,向下之后还需要向右。两条路[ 右、下 ]都是比当前大的,但是如果是右上角,左边都是小的,下边都是大的,j=1后j=0就肯定不用看了,因为j=0都小于j=1.同理左移的话,右面的数也都不需要看
class Solution:
def findNumberIn2DArray(self
, matrix
, target
: int) -> bool:
i
, j
= len(matrix
) - 1, 0
while i
>= 0 and j
< len(matrix
[0]):
if matrix
[i
][j
] > target
:
i
-= 1
elif matrix
[i
][j
] < target
:
j
+= 1
else:
return True
return False
转载请注明原文地址:https://ipadbbs.8miu.com/read-61591.html