美文网首页
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右

在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右

作者: 翩翩公子银圈圈 | 来源:发表于2018-12-29 16:05 被阅读0次

利用本身有的特性:

# -*- coding:utf-8 -*-
class Solution:
    # array 二维列表
    def Find(self, target, array):
          self.target=target
        self.array=array
        n=len(self.array)
        m=len(self.array[0])
        flag=False
        if (len(self.array[0]) == 0):
            return False
        if(self.target<self.array[0][0]) or (self.target>self.array[n-1][m-1]):
            return False
        for i in range(n-1,-1,-1):
            if self.target<=self.array[i][n-1] and self.target>=self.array[i][0]:
                for j in range(len(self.array[0])-1,-1,-1):
                    if self.target==self.array[i][j]:
                         return True
        return Flase
    ~~~
利用2分查找
~~~python
class Solution:
    # array 二维列表
    def Find(self, target, array):
        self.target=target
        self.array=array
        n=len(self.array)
        m=len(self.array[0])
        flag=False
        if (len(self.array[0]) == 0):
            return False
        if(self.target<self.array[0][0]) or (self.target>self.array[n-1][m-1]):
            return False
        for i in range(0,n):
            l=0
            r=n-1
            while(l<=r):
                mid=(l+r)//2
                if(self.target<array[i][mid]):
                    r=mid-1
                elif(self.target>array[i][mid]):
                    l=mid+1
                else:
                    return True
        return False

相关文章

  • 刷题-数组专项

    数组 二维数组中的查找题目描述:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每...

  • 剑指offer(Java版)day01:二维数组中的查找|替换空

    1二维数组中的查找 【题目】在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每...

  • 《剑指offer》(一)-二维数组中的查找(java)

    数组--二维数组中的查找 题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序...

  • 剑指offer | 二维数组中的查找

    二维数组中的查找 题目描述: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一...

  • 剑指offer汇总

    二维数组中的查找在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到...

  • 剑指offer(一)

    1.二维数组中的查找 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照...

  • 剑指offer-01-二维数组中的查找

    二维数组中的查找 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上...

  • 数组-Python刷题笔记

    二维数组中的查找 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上...

  • 剑指offer

    二维数组中查找数在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到...

  • 剑指

    1. 二维数组中查找 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照...

网友评论

      本文标题:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右

      本文链接:https://www.haomeiwen.com/subject/ylhplqtx.html