【面试题3】二维数组中的查找
【题目描述】
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样一个二维数组和一个整数,判断数组中是否存在该整数。
【解决方案】
每次根据右上角的一个数arr[i][j]和所求整数num的比较结果,来排除一行(或一列)的整数。
arr[i][j] == num,数组中数组中存在该整数;
arr[i][j] > num,arr[i][j]所在列都比num大,排除arr[i][j]所在列;
arr[i][j] < num,arr[i][j]所在行都比num小,排除arr[i][j]所在行;
我的代码实现,仅供参考:
1 public bool IsExists(int[][] arr, int num) 2 { 3 if (arr == null || arr[0] == null) 4 return false; 5 6 int row = 0; 7 int rows = arr[0].Length; 8 int col = arr.GetLength(0) - 1; 9 10 while (row < rows && col >= 0) 11 { 12 if (arr[row][col] > num) 13 { 14 col--; 15 } 16 else if (arr[row][col] < num) 17 { 18 row++; 19 } 20 else if (arr[row][col] == num) 21 { 22 return true; 23 } 24 } 25 26 return false; 27 }
转载于:https://www.cnblogs.com/HuoAA/p/4796850.html
【面试题3】二维数组中的查找相关推荐
- 剑指offer:面试题04. 二维数组中的查找
题目:二维数组中的查找 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该 ...
- 数组中其余的排除_[leetcode 剑指offer系列] 面试题04. 二维数组中的查找
题目难度: 简单 原题链接 今天继续更新剑指 offer 系列, 这道题的优化空间非常大, 个人感觉很适合作为面试题, 值得一做. 大家在我的公众号"每日精选算法题"中的聊天框中回 ...
- 剑指offer编程题Java实现——面试题3二维数组中的查找
题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 下面是我实现的代码,修 ...
- 剑指Offer - 面试题4. 二维数组中的查找(双指针)
1. 题目 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 示例 ...
- 剑指offer面试题04. 二维数组中的查找(Array)
题目描述 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 思路 ...
- Java利用二维数组判断节假日_《剑指offer》面试题3 二维数组中的查找 Java版
(二维数组,每行递增,每列递增.输入二维数组和一个整数,判断数组中是否含有此数.) 我的方法:拿到题目,根据题目条件我提取出这样一个特性:一个数的右边和下面的数都比它大.于是就可以写出一种递归的方法: ...
- 二维数组的空间复杂度_剑指 offer 面试题精选图解 04 . 二维数组中的查找
点击关注上方"图解面试算法", 设为"置顶或星标",一起刷 LeetCode. 作者:程序员吴师兄 今天分享的题目来源于 LeetCode 上的剑指 Offer ...
- leetcode|剑指offter|面试题4:二维数组中的查找
面试题04. 二维数组中的查找 问题描述 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判 ...
- 面试题4:二维数组中的查找
/******************************************************************* Copyright(c) 2018, htfeng All r ...
- [剑指offer]面试题3:二维数组中的查找
面试题3:二维数组中的查找 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. ...
最新文章
- Apache、Nginx、Tomcat、PHP的区别
- 自我总结(四) ---java web项目完结,j2ee的开始
- 爬虫Selenium报错“cannot find Chrome binary“解决方案
- 全能HOOK框架 JNI NATIVE JAVA ART DALVIK
- OpenGL定向光的投影阴影
- JavaWeb第一讲 Servlet的工作原理及生命周期
- 嵌入式C语言基础(二)
- git 查看某些文档的历史版本_Git 教程(二)log 命令的使用
- android日志打印机制,Android4_使用Log打印
- 网页获取服务器时间,通过AFNetworking获取服务器时间
- 从零基础入门Tensorflow2.0 ----八、39.3. gpu3
- 朗逸机器人_几张动图告诉你,工业机器人无所不能!
- linux命令行改变时区,Linux命令行操作修改系统时区
- win10隐藏任务栏_你真的了解任务栏吗?win10任务栏居然隐藏了这么多小窍门
- 【CVPR2022】论文列表与下载——PartFour
- AcrGIS 做成本距离分析时提示ERROR 999999:无法启动配置 RasterCommander.ImageServer
- 云服务器定时启动程序_VPS?云主机?自家服务器,启动
- Microsoft Web Farm Framework (WFF) 2.0正式发布
- auto头文件 qt_C++ auto 关键字的使用
- 201571030135/201571030137《小学四则运算练习软件》结对项目报告
热门文章
- 北上深 | 商汤招聘智能视频和数字人算法研究员(全职/实习)
- 穿墙透视真的来了!MIT华人团队超强动作检测模型,小黑屋照样夜视
- CV Code | 计算机视觉开源周报 20190603期
- 13篇京东CVPR 2019论文!你值得一读~
- 腾讯内容平台部-视频内容理解算法实习生
- 麻省理工、微软为AI量身打造了一套leetcode编程题
- Hinton发布最新论文!表达神经网络中部分-整体层次结构
- GAN模型计算量减少至1/9!MIT韩松团队提出GAN压缩法,已开源
- 【OpenCV】OpenCV函数精讲之 -- createTrackbar()函数、getTrackbarPos()函数
- 深度学习与TensorFlow:FCN论文学习笔记