剑指offer 面试题04. 二维数组中的查找(简单)

摘要:
在n*m的二维数组中,每行按从左到右的升序排序,每列按从上到下的升序排序。请完成一个函数并输入这样一个二维数组和一个整数,以确定数组是否包含该整数。示例:现有矩阵如下:[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24,24],[18,21,23,26,30]给定目标=5,返回true。给定target=20,返回false。
在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
 
示例:
现有矩阵 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。
 
限制:
0 <= n <= 1000
0 <= m <= 1000
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof
matrix.size()和matrix[0].size() 可以类比 int m[10][20],matrix.size()读的是10,matrix[0].size()读的是20
 1 class Solution {
 2 public:
 3     bool findNumberIn2DArray(vector<vector<int>>& matrix, int target) {
 4         if(matrix.empty()) return false;
 5         int n=matrix.size(),m=matrix[0].size();
 6         //n是行数,m是列数
 7         for(int i=0;i<n;i++)
 8             for(int j=0;j<m;j++)
 9             {
10                 if(matrix[i][j]>target) break;
11                 if(matrix[i][j]==target) return true;
12             }
13         return false;
14     }
15 };

免责声明:文章转载自《剑指offer 面试题04. 二维数组中的查找(简单)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇linux使用xampp安装MediaWiki环境小程序中的数值传参方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Vue.set()和this.$set()源码解析

前言 我们在日常项目开发过程中,有时候我们对数组或者对象进行了一些操作后,发现页面数据没有更新到。这个时候就会有疑问,why? 如果我们在看文档有这样一个api,以下内容: Vue.set()和this.$set()实现原理 Vue.set()的源码:... 这里是省略的代码 import { set } from '../observer/index'...

理解 Android Build 系统

测试 前言 Android Build 系统是 Android 源码的一部分。关于如何获取 Android 源码,请参照 Android Source 官方网站 。 Android Build 系统用来编译 Android 系统,Android SDK 以及相关文档。该系统主要由 Make 文件,Shell 脚本以及 Python 脚本组成,其中最主要的是...

BUAA_2019_MATLAB基础与应用_期末复习纲要

Matlab复习提纲 一、概述 1. Matlab(Matrix Laboratory)概述 1980年,由美国的 Clever Moler 博士开发; 是一款 科学与工程计算软件; 第四代智能计算机语言。 2. 功能与特点 开放性强、可扩展性强,兼容性强,直观灵活; MATLAB提供了丰富的矩阵运算处理功能,是基于矩阵运算的处理工具; 矩阵运...

Google的PageRank算法浅析

最近在学习hadoop,对google的pagerank算法先做下了解。搜索到《Google的PageRank算法浅析》一文,受益匪浅。 文章链接:http://blog.codinglabs.org/articles/intro-to-pagerank.html  张洋的博客 文章浅显易懂,思路非常清晰。 第一部分:首先从搜索引擎的难题引入,PageRa...

最小二乘法小结

最小二乘法是用来做函数拟合或者求函数极值的方法。在机器学习,尤其是回归模型中,经常可以看到最小二乘法的身影,这里就对我对最小二乘法的认知做一个小结。 1.最小二乘法的原理与要解决的问题  最小二乘法是由勒让德在19世纪发现的,原理的一般形式很简单,当然发现的过程是非常艰难的。形式如下式: 目标函数 =Σ(观测值-理论值)2 观测值就是我们的多组样本,理论值...

Chelsio T520 T420安装LIO iSCSI Target Offload

安装lio_target需要特殊组件,先配置kernel,再安装lio_target   #配置kernel   rpm -ivh kernel-3.10.0-862.2.3.el7.src.rpm(忽略此次报错)   cd /root/rpmbuild/SPECS/   rpmbuild -bp kernel.spec --nodeps   cd  .....