首页 > 其他分享 >74. Search a 2D Matrix刷题笔记

74. Search a 2D Matrix刷题笔记

时间:2023-05-26 22:07:30浏览次数:64  
标签:high Search Matrix int List mid 2D low matrix


题目描述 用了两个二分查找法。当然也可以把matrix转为数组来索引

class Solution:
    def searchMatrix(self, matrix: List[List[int]], target: int) -> bool:
        low = 0
        high = len(matrix)-1
        mid = 0
        while low<=high:
            mid = (high+low)//2
            if target < matrix[mid][0]:
                high = mid-1
            elif target>matrix[mid][-1]:
                low = mid+1
            else:
                break
        i = mid
        low = 0
        high = len(matrix[0])-1
        while low<=high:
            mid = (low+high)//2
            if target==matrix[i][mid]:
                return True
            if target<matrix[i][mid]:
                high = mid-1
            else:
                low = mid+1
        return False

运行结果:

74. Search a 2D Matrix刷题笔记_leetcode


标签:high,Search,Matrix,int,List,mid,2D,low,matrix
From: https://blog.51cto.com/u_16131692/6359347

相关文章

  • 897. Increasing Order Search Tree
    问题描述yield就是return返回一个值,并且记住这个返回的位置,下次迭代就从这个位置后(下一行)开始。如果是迭代器则应该使用yieldfromclassTreeNode(object):def__init__(self,x):self.val=xself.left=Noneself.right=None#树生成代......
  • 304. Range Sum Query 2D - Immutable刷题笔记
    暴力做超时了,参考题解但是它只考虑了一种情况,事实上可以继续扩充的classNumMatrix:def__init__(self,matrix:List[List[int]]):m,n=len(matrix),len(matrix[0])self.sum=[[0]*(n+1)for_inrange(m+1)]#sum[i][j]issumofallel......
  • ElasticSearch启动&停止命令
    ElasticSearch启动&停止命令1、查进程ps-ef|grepelastic2、杀进程kill-91302ps-ef|grepelastic3、启动服务#切换es用户,启动elasticsearch不能使用root用户suescd/opt/elasticsearch-7.10.2/bin#后台运行./elasticsearch-dps-ef|grepelastic ......
  • docker 安装elasticsearch7.9 和 SkyWalkin
    1、相关地址:官网:https://skywalking.apache.org/下载:https://skywalking.apache.org/downloads/Github:https://github.com/apache/skywalking文档:https://skywalking.apache.org/docs/main/v9.1.0/readme/ 其他版本文档,先进https://skywalking.apache.org/docs/main/,选择版本,查......
  • Elasticsearch 之 join 关联查询及使用场景
    在Elasticsearch这样的分布式系统中执行类似SQL的join连接是代价是比较大的,然而,Elasticsearch却给我们提供了基于水平扩展的两种连接形式。这句话摘自Elasticsearch官网,从“然而”来看,说明某些场景某些情况下我们还是可以使用的一、join总述1、关系类比在关系型数据库中,以MySQ......
  • Elasticsearch之join关联查询及使用场景 | 京东云技术团队
    在Elasticsearch这样的分布式系统中执行类似SQL的join连接是代价是比较大的,然而,Elasticsearch却给我们提供了基于水平扩展的两种连接形式。这句话摘自Elasticsearch官网,从“然而”来看,说明某些场景某些情况下我们还是可以使用的一、join总述1、关系类比在关系型数据库中,以MySQL为......
  • 2D 转换
    1.转换转换(transform)是CSS3中具有颠覆性的特征之一,可以实现元素的位移、旋转、缩放等效果。转换(transform)可以简单理解为变形。移动:translate旋转:rotate缩放:scale1.1二维坐标系2D转换是改变在二维平面上的位置和形状的一种技术。1.22D转换之移动translate2D移动是2D......
  • elasticsearch在启动后出现[transport.netty][solr001] exception caught on transpor
    elasticsearch在启动后出现如下错误:[2019-04-18T09:29:57,850][WARN][o.e.t.n.Netty4Transport ][xHaZmSP]exceptioncaughtontransportlayer[[id:0xe6246f88,L:/127.0.0.1:9300-R:/127.0.0.1:9493]],closingconnectionjava.io.IOException:杩滅▼涓绘満寮鸿揩鍏......
  • 【ElasticSearch】关于es跨域的问题
    本文目录一、使用es的head插件二、其他说明一、使用es的head插件在使用es的head插件时,默认的9100,需要访问es的默认端口9200时,会出现跨域问题,此时只需要修改一下es的配置文件即可。在elasticsearch.yml中添加开启跨域的配置:http.cors.enabled:truehttp.cors.allow-origin:"*"说明......
  • elasticsearch/es搜索服务器介绍
    目录1、ElasticSearch介绍1.1原理与应用2、ElasticaSearch的的安装使用2.1安装2.2配置文件2.3启动ES2.4head插件安装1、ElasticSearch介绍我们先来看下百度百科的介绍:ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTfulwe......