zoukankan      html  css  js  c++  java
  • 剑指offer——01二维数组中的查找(Python3)

    题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

    思路:本题中的二维数组从左到右,从上到下依次递增,即每一行的最后一个数字为最大,每一列的最下数字为最大。

    在查找过程中总共分为两种情况:

    1、查找数字小于比较数字,说明查找数字在比较数字的左边

    2、查找数字大于比较数字,说明查找数字在比较数字的下边

    以查找7为例:

    代码:

    import time
    class Solution:
    def find(self,target,array):
    '''

    :param target: 查找目标数字
    :param array: 传入列表
    :return: 0/1
    '''
    arrlen = len(array)#列表长度,确定行数
    col = len(array[0])-1#确定一行中最大列数
    if arrlen>0 and col>1:#判断矩阵
    row = 0
    while row <arrlen and col >=0:#循环终止条件
    if array[row][col] <target:#如果目标数大于矩阵中的数
    row = row+1
    elif array[row][col] >target:
    col = col - 1
    else:
    return True
    return False
    else:
    return False
  • 相关阅读:
    chapter01 Bob'store
    echo拼接
    《PHP和MySql Web》书,<input>属性
    http协议
    asc18_hpl,hpc,hpcg
    考研北邮总结[转发共享]
    考研经验总结【转发共享】
    ISBN号码 201312-2
    出现次数最多的数 201312-1
    相反数 201403-1
  • 原文地址:https://www.cnblogs.com/wobushangwangl/p/10922444.html
Copyright © 2011-2022 走看看