# -*- coding: utf-8 -*-
# @Time : 2020/9/8 4:00 下午
# @Author : yuxiaoxue
# @File : ques13.py
'''
3.二维数组中查找目标值
题目描述:
在一个二维数组中,每一行都按照从左到右递增的顺序排序,
每一列 都按照从上到下递增的顺序排序。请完成一个函数,
输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
'''
#获取二维数组长度的方式print(array.shape)、len(array)
import sys
class Solution:
# array 二维列表
def Find(self, target, array):
if array == None or len(array) == 0:
return False
column = len(array[0]) - 1
row = 0
# 从第一行的最后一列开始遍历匹配,如果比第一行最后一排的数字大就去匹配第二行、第三行等,
# 如果比这个小,就去匹配第一行的倒数第二列,按照这个规律匹配每一行
while row < len(array) and column >= 0:
if array[row][column] == target:
return True
if array[row][column] > target:
column -= 1
else:
row += 1
return False
网友评论