二维数组中的查找Python实现
2018-02-26 12:29
363 查看
题目描述
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路二维数组的行越右越大,列越下越大,为了寻找一个数可以从二维数组的左下角开始,若目标值大于这个数,则右移;若目标值小于这个数,则上移。若遍历结束还未找到该目标值则返回False,若在过程中找到了则返回True。PS.Python中没有数组的概念,在此用list类型来表示数组,二维数组可以用二维列表来表示。对于一个二维列表array,array[0]表示第一行,len(array)表示行数,len(array[0])则表示列数。例 一个二维列表:[[1, 2, 3], [4, 5, 6], [7, 8, 9]]代码# -*- coding:utf-8 -*-class Solution:
# array 二维列表
def Find(self, target, array):
# write code here
rows=len(array)-1
cols=len(array[0])-1
i=rows
j=0
while i>=0 and j<=cols:
if target > array[i][j]:
j += 1
elif target < array[i][j]:
i -= 1
else:
return True
return False
相关文章推荐
- 2.二维数组中的查找(python和java实现)
- 二维数组中的查找(python实现)
- python实现剑指offer系列:二维数组的查找
- 二维数组中的查找(C++和Python实现)
- 牛客网 二维数组中的查找python实现
- python中顺序查找分析和实现
- Python二维数组实现求出3*3矩阵对角线元素的和
- 剑指offer-二维数组中的查找 java实现
- 剑指offer面试题java实现之题3:二维数组中的查找
- 将一个LIST拆分成一个子LIST元素个数为n的二维数组(python实现)
- 详解常用查找数据结构及算法(Python实现)
- 二叉树查找之python实现--(插入)
- 剑指offer面试题:二维数组中的查找,C语言实现
- Python 字符串操作实现代码(截取/替换/查找/分割)
- python实现的二分查找
- 剑指offer刷题之java实现的二维数组中的查找
- Python 实现查找的几种类型 (线性查找,线性有序查找,线性查找最小值,二分查找)
- python实现:使用二分查找,查找有序数组中,一个数字最后出现的下标
- Python实现函数,在Sqlite中根据分数段查找指定的名字
- Python实现二维数组按照某行或列排序的方法