python 二维数组长度_剑指offer二维数组中的查找【Java+Python】

点击上方"蓝字",关注了解更多fc6e87cc3277aa6ddeebf5f888fdcb71.png

二维数组中的查找

1. 题目描述

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

2. 示例

现有矩阵 matrix 如下:

[ [1, 4, 7, 11, 15],

[2, 5, 8, 12, 19],

[3, 6, 9, 16, 22],

[10, 13, 14, 17, 24],

[18, 21, 23, 26, 30] ]

给定 target = 5,返回 true。

给定 target = 20,返回 false。

3. 解题思路

使用以下方法的前提是:该矩阵是有序的。

从矩阵的左下角开始搜索,即从18 开始查找,如果该数大于目标数,则 行数 减去 1,向上搜索小的数值;

如果小于目标数,则 列数 + 1 ,向右边搜索,搜索更大的数值

4. Java实现

// Java语言实现
public class Solution {
    public boolean Find(int target, int [][] array) {
        int row = array.length-1;
        int col = 0;  
        // 从左下角开始搜索,array.length 表示行的大小,array[0].length表示列的大小
        
        while (row >= 0 && col <= array[0].length-1){
            if (array[row][col] == target){
                return true;
            }else if(array[row][col] > target){
                row--;
            }else{
                col++;
            }
            
        }
        return false;
 
    }
}

5. Python实现

class Solution(object):
    def searchMatrix(self, matrix, target):
        """
        :type matrix: List[List[int]]
        :type target: int
        :rtype: bool
        """
        
        if not matrix:
            return False
        
        rows, cols = len(matrix), len(matrix[0])
        #从左下角开始搜索
        row, col = rows - 1, 0
        while row >= 0 and col <= cols-1:
            if matrix[row][col] == target:
                return True 
            elif matrix[row][col]                 col += 1
            else:
                row -= 1 # row一直减少
        return False

如果您觉得本文有用,请点个“在看”

88fd3a8146d825b9082b8b632ee8ab81.png精彩推荐

Java开发微服务畅购商城实战-全357集【附代码课件】

Java微服务实战谷粒商城-296集【附代码课件】

Spring Boot开发小而美的个人博客【附课件和源码】

基于Python flask框架的租房项目实战【附资料和源码】

PyQt5开发与实战视频【附课件和源码】

最全最详细数据结构与算法视频-【附课件和源码】

2020年微信小程序全栈项目之喵喵交友【附课件和源码】

b03c56b850148ff93d4c8c8ffa7f4a31.png                      

你点的每一个在看,我都认真当成了喜欢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/528931.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

失物招领小程序_通知 | 保卫部拟设置失物招领处

保卫部拟设置失物招领处为规范对遗失物品的接收、登记、发放等工作&#xff0c;切实维护师生利益&#xff0c;保卫部拟设置失物招领处&#xff0c;现将有关失物招领的流程明确如下&#xff1a;1、失物招领地点&#xff1a;保卫部二楼中厅。2、遗失物的接收。师生将拾得的遗失物…

php获取表所有数据类型,php excel 导入 导入三级分类 表格应该怎么设计才能得到想要的数据格式?...

就是多个1级分类 下面有不确定个二级分类 二级分类下面有不确定个三级分类 我想获取到相关的数据组合写入数据库 但是这个格式不知道怎么排才能获取到对的数据有空的亲们给看看 帮下 谢谢有没有办法获取整列的值 然后根据长度去区分2列 然后再区分三列现在获取到的数据格式是按…

redis 清空db下_PHP操作redis实现的分页列表

正文内容封装类文件如下&#xff1a;/* * redis 分页数据类库 */class redisPage{protected $_redis;protected $_redis_ip 127.0.0.1; //ipprotected $_redis_port 6379; //端口protected $_redis_db 0; //数据库号protected $_hash_prefix my_data; //前缀名称public fun…

php5.1.4,apache 2.2.2 + PHP5.1.4 不能运行的解_php

apache 2.2.2 php5.1.4 不能运行的解决办法.问题,使用传统的模块化方法安装PHP5.1.* apache 2.2.2 后不能启动,提示:"Cannot load C:/php/php5apache2.dll into server: The specified module could not be found."原因:PHP压缩包里的php5apache2.dll只适用于apach…

java 保留字符串,如何在Java中保留字符串而不使用反转功能

有以下几种在Java中反转字符串的方法&#xff1a;使用for循环使用While循环使用静态方法使用For循环使用for循环在Java中反转字符串的示例在下面的示例中, 我们使用了for循环来反转字符串。 for循环执行直到条件i> 0变为false为止。import java.util.Scanner;class ReverseS…

php用cdn打不开,开启 CDN 后 wordpress 后台打不开的解决办法

现在很多站长把网站放到国外&#xff0c;使用 CDN 加速功能提高国内的访问速度&#xff0c;前面提到过开启腾讯云 CDN 后 wordpress 后台显示&#xff1a;连接被重置的解决办法&#xff0c;而今天遇到的是另外一种情况&#xff0c;有时候会遇到开启 CDN 后 wordpress 后台打不开…

android 支付宝月账单 统计图_记账其实很简单,用微信、支付宝就够了!

用微信、支付宝记账&#xff0c;从起告别糊涂账养成记账的好习惯&#xff0c;能让你对生活中的各种收支做到心中有数&#xff0c;从此告别糊涂账。长期坚持&#xff0c;能帮助我们理性消费、科学理财。但或许是因为记账的过程太枯燥&#xff0c;或许是因为没找到合适的记账方法…

mysql抖动可能的原因,12 | 为什么我的MySQL会“抖”一下?

你的 SQL 语句为什么变“慢”了平时执行很快的更新操作&#xff0c;其实就是在写内存和日志&#xff0c;而 MySQL 偶尔“抖”一下的那个瞬间&#xff0c;可能就是在刷脏页(flush)。当内存数据页跟磁盘数据页内容不一致的时候&#xff0c;我们称这个内存页为“脏页”。内存数据写…

怎样快速画出一个正方体_图形与几何---正方体

一&#xff0e;概念描述现代数学&#xff1a;正方体亦称立方体。它是一种正多面体。即棱长相等的长方体&#xff0c;因此亦称正六面体&#xff0c;如下图。小学数学&#xff1a;2007年北京版教材第10册的第3页指出&#xff1a;长、宽、高都相等的长方体叫作正方体(也叫作立方体…

复旦微电子fpga数据手册_专注FPGA图像加速领域 深维科技跨入发展快车道

日前&#xff0c;在2019赛灵思开发者大会(美洲站)上&#xff0c;深维科技正式面向全球发布ThunderImage三款重磅图像加速产品&#xff1a;全球最快的JPEG2JPEG缩略图方案、超高性能的JPEG2WebP转码方案及世界级超高密度算力的JPEG2JPEG缩略图方案。新产品一经发布立即“技惊”四…

python 调c++生成的dll 中识别char *_基于tensorflow 实现端到端的OCR:二代身份证号识别...

最近在研究OCR识别相关的东西&#xff0c;最终目标是能识别身份证上的所有中文汉字数字&#xff0c;不过本文先设定一个小目标&#xff0c;先识别定长为18的身份证号&#xff0c;当然本文的思路也是可以复用来识别定长的验证码识别的。 本文实现思路主要来源于Xlvector的博客&a…

php友价商城手游,2019年T5友价商城网站程序-伪静态规则

# Version 3.1.0.73RewriteEngine on#RewriteBase /RewriteRule vip(.*) /shop/view.php?str$1RewriteRule ^(.*)/search(.*).html /$1/index.php?str$2RewriteRule ^(.*)/goods([0-9]*).html /$1/goods.php?id$2RewriteRule ^(.*)/(.*)list(.*).html /$1/$2list.php?str$3…

php程序员学什么语言好就业_2019年初中毕业生学什么专业好?学什么专业好就业?...

前言&#xff1a;据了解&#xff0c;目前我国职业人才缺口较大&#xff0c;市场供需不平衡。许多学生往往还没毕业&#xff0c;就已经与企业签订了就业协议。因此&#xff0c;有许多家长愿意把小孩子送到专业学校进行就读。毕竟可以学的一门好专业&#xff0c;对学生将来的路是…

中print中加f_Python3中的格式化输出

Python3字符串格式化输出有两种形式实现&#xff1a;a&#xff1a;字符串格式化表达式&#xff1a; ...%... % (values)b&#xff1a;字符串格式化方法调用&#xff1a;...{}....format(values) 或者 f...{xx}...1:字符串格式化的类型码(typecode)(表1)2: 字符串格式化表达式格…

Json-ServerMockJs简单快速生成测试数据

Json-Server&MockJs简单快速生成测试数据 1、Json-Server 和 MockJs的安装 npm install -g json-server //全局安装2、创建目录和初始话 例如&#xff1a;创建D:\ProjectOne文件夹 3、打开终端或者powershell进入ProjectOne文件夹 4、初始化项目 npm init5、安装Mock…

oracle nvl和coalesce,NVL与Coalesce之间的Oracle差异

慕码人8056858COALESCE是更现代的功能&#xff0c;是ANSI-92标准的一部分。NVL在Oracle具体的&#xff0c;它在推出80的前存在任何标准。在两个值的情况下&#xff0c;它们是同义词。但是&#xff0c;它们的实现方式不同。NVL总是计算两个参数&#xff0c;同时COALESCE通常在找…

安卓签名生成工具_ios app如何进行内测?ios app和安卓app的内测有何区别?

目前手机主流的操作系统分为Android和iOS两大阵营&#xff0c;分别是由谷歌和苹果进行开发维护。这两大平台的应用都相互独立&#xff0c;无论是运行机制还是底层原理&#xff0c;都不一样&#xff0c;所以即使是同一款App也是需要针对在两大平台上分别进行内测和运营、发布。那…

深拷贝的缺点_拷贝?还傻傻分不清深浅?

「引言」❝臣闻求木之长者&#xff0c;必固其根本&#xff1b;欲流之远者&#xff0c;必浚其泉源。---- 魏征 《谏太宗十思疏》❞或许你会问到&#xff0c;网上已经把深浅拷贝(算一个面试的高频考点了吧)的文章都快写烂了&#xff0c;为什么自己还要重新操刀写一遍呢&#xff0…

实现文件中名词的统计计数_通过勤哲EXCEL和Excel中的rank函数实现排名统计

如今&#xff0c;信息化已成为各行业企业转型和发展的关键所在&#xff0c;信息化技术最明显的特点是企业不同部门的人在信息技术的支撑下&#xff0c;可以利用丰富的资源与工具展开协作学习&#xff0c;在相对自由的模式和环境下&#xff0c;改变传统设计相对局限、固定思维的…

安徽关节式焊接机器人_上下料机器人的重要性体现在哪里?它有哪些优势?

上下料机器人是工业机器人家族中从事加工应用的重要成员之一&#xff0c;能满足“快速、大批量加工节拍”、“节省人力成本”、“提高生产效率”等要求&#xff0c;成为越来越多中心企业的理想选择。那么&#xff0c;上下料机器人有哪些特征和优势&#xff1f;企业主应该如何选…