今天因为心动和内疚睡不着,起来刷题,活学活用了bisect的函数。
可以参照这个利用bisect查询一个数在不在list中,如果bisect_left和bisect_right返回值一样则不存在,不一样则存在。
class Solution:
def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
if len(matrix)==0 or len(matrix[0])==0:
return 0
a=[]
for i in range(len(matrix)):
a.append(matrix[i][0])
if target==matrix[i][0]:
return 1
index1=bisect.bisect_left(a,target)-1
index2=bisect.bisect_left(matrix[index1],target)
index3=bisect.bisect_right(matrix[index1],target)
if index2==index3:
return 0
else:
return 1