1 问题描述
在一个m行n列的二维数组中,每一行都按照从左到右递增的顺序排列,每一列都按照从上到下递增的顺序排列。现在输入这样的一个二维数组和一个整数,请完成一个函数,判断数组中是否含有该整数。

2 解决方案
2.1定位法

下面算法的时间复杂度为O(m + n),空间复杂度为O(1)。

package com.liuzhen.practice;public class Main {public boolean YoungMatrix(int[][] A, int key) {int i = 0, j = A[0].length - 1;int temp = A[i][j];while(true) {if(temp == key) {return true;} else if(temp < key && i < A.length - 1) {temp = A[++i][j];} else if(temp > key && j > 0) {temp = A[i][--j];} else {return false;}}}public static void main(String[] args) {Main test = new Main();int[][] A = {{1,2,8,9},{2,4,9,12},{4,7,10,13},{6,8,11,15}};if(test.YoungMatrix(A, 6)) System.out.println("矩阵A中包含元素6");elseSystem.out.println("矩阵A中不包含元素6");if(test.YoungMatrix(A, 5)) System.out.println("矩阵A中包含元素5");elseSystem.out.println("矩阵A中不包含元素5");}
}

运行结果:

矩阵A中包含元素6
矩阵A中不包含元素5

Java实现行列递增矩阵的查找相关推荐

  1. 【算法题目】行列递增矩阵中查找一个数值 Python

    ref:https://blog.csdn.net/u010089444/article/details/70854510 所以(python): class Solution:def findNum ...

  2. java 矩阵_(JAVA)计算机图形学与矩阵

    (JAVA)计算机图形学与矩阵 平移 旋转 变比 一)矩阵 1)矩阵的乘法运算 矩阵是计算机图形学的重要工具. 计算机图形学要常常用到 矩阵乘法(矩阵与矩阵相乘). 矩阵(Aij)m*n 与矩阵(Bi ...

  3. c语言 - 杨氏矩阵,查找某个数字(思路清晰,代码简洁)(适合刚入坑)

    作者简介:一名大一在校生 个人主页:月亮嚼成星~ 个人WeChat:yx1552029968 系列专栏:c语言刷题总结 每日一句:当暴雨在头顶倾泻时,你只当它是屋檐滴水. 杨氏矩阵 题目: 有一个数字 ...

  4. 【转】Java中字符串中子串的查找共有四种方法(indexof())

    原文网址:http://wfly2004.blog.163.com/blog/static/1176427201032692927349/ Java中字符串中子串的查找共有四种方法,如下: 1.int ...

  5. 牛客题霸 [矩阵元素查找] C++题解/答案

    牛客题霸 [矩阵元素查找] C++题解/答案 题目描述 已知int一个有序矩阵mat,同时给定矩阵的大小n和m以及需要查找的元素x,且矩阵的行和列都是从小到大有序的.设计查找算法返回所查找元素的二元数 ...

  6. java 蓝桥杯算法训练 数组查找及替换

    试题 算法训练 数组查找及替换 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 给定某整数数组和某一整数b.要求删除数组中可以被b整除的所有元素,同时将该数组各元素按从小到大排序.如 ...

  7. Java中字符串中子串的查找共有四种方法(indexof())

    2019独角兽企业重金招聘Python工程师标准>>> public class FirstDemo { /** *API中String的常用方法 */ // 查找指定字符串是否存在 ...

  8. 程序员面试金典——11.6矩阵元素查找

    程序员面试金典--11.6矩阵元素查找 Solution1:我的答案.和剑指offer上的题目类似,复杂度是O(m+n)O(m+n)O(m+n). class Finder { public:vect ...

  9. 【算法 | 实验18】在字符矩阵中查找给定字符串的所有匹配项

    文章目录 题目描述 思路分析 bug记录:"error: '>>' should be '> >' within a nested template argument ...

最新文章

  1. Java面试参考指南(二)
  2. 追寻终极数据库 - 事务/分析混合处理系统的交付挑战 (1)
  3. 「后端小伙伴来学前端了」Vue中利用全局事件总线改造 TodoList 案例
  4. 数据可视化(三)- Seaborn简易入门
  5. CentOs环境下PHP支持PDO_MYSQL
  6. 中国移动云智融合峰会 | 1+1>2, 引领创新发展
  7. cass怎么把块打散命令_分解cass高程点即属性块
  8. html是执行语言吗,HTML的基本语言
  9. 《学习OpenCV3》第4章 图像和大型数组类型(持续更新)
  10. BugFree的安装
  11. Excel中关于数组函数的研究
  12. viper12a电源电路图_基于VIPER12A芯片设计的开关电源
  13. Jupyter Notebook设置密码且遇到提示:ImportError: DLL load failed while importing _ssl
  14. 详解云计算中的业务敏捷性
  15. 乐视路由器刷机后修改固件成art信息
  16. IP错误引起MongoDB副本集初始化失败
  17. VMware+物理机——搭建内外网环境
  18. CSDN日报190219——表面上又佛又丧,背地里天天向上,算是看透你们了
  19. 修改Chrome 默认打开网址
  20. ftp作为网站储存服务器,nas存储怎么做ftp服务器

热门文章

  1. 教程篇(7.0) 07. FortiGate安全 证书的操作 ❀ Fortinet 网络安全专家 NSE 4
  2. 人工智能复试面试题总结
  3. 基于STM32的智能小车--舵机云台设计
  4. EFM32使用外部低频晶振的操作
  5. Pytorch 基础(1)
  6. CV8 OpenCV环境下实现大津算法
  7. 科大讯飞、学而思、读书郎“混战”学习机
  8. 等保测评之安全通信网络
  9. iOS-OC-widget使用教程
  10. 谭浩强c语言程序设计第四版课后习题:求Sn=a+aa+aaa+aaaa+...n个a ,a是数字 ,n表示a的位数