剑指offer:二维数组中的查找
来源:互联网 发布:lena藤井莉娜的淘宝店 编辑:程序博客网 时间:2024/06/06 02:07
题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
例如:1 2 8 9
2 4 9 12
4 7 10 13
6 8 11 15
要找的数是7.
因为二维数组每行从左向右递增,每列从上到下递增,我们可以先和右上角的9比,7<9,说明9所在列都比7大,就可以去除9所在列;接着和右上角的8比,发现7<8,则去除8所在列;7与2相比,7>2,说明7 要不在2的下方要不在2的右方,因为2的右方两列都去除了,则7一定在2的下方,又因为行是从左至右递增的,就可以去除2所在行;7与4相比,7>4,去除4说在行;7与7比等于,查询完毕。
代码如下:
public class Solution{
public boolean Find(int target,int[][] array){
int row=0;
int col=array[0].length-1;
while(row<=array.length-1&&col>=0){
if(target==array[row][col])
return true;
else if(target>array[row][col]){
row++;
}else{
col–;
}
}
return false;
}
}
- 剑指offer-->二维数组中的查找
- 剑指offer之二维数组中的查找
- 剑指offer:3-二维数组中的查找
- [剑指Offer]二维数组中的查找
- 【剑指offer】二维数组中的查找
- [剑指Offer]二维数组中的查找
- 剑指Offer:二维数组中的查找
- 【剑指offer】二维数组中的查找
- 剑指offer 1384 二维数组中的查找
- 剑指Offer之二维数组中的查找
- 剑指offer 03:二维数组中的查找
- 剑指offer(2) - 二维数组中的查找
- 剑指offer-二维数组中的查找
- 剑指offer-3 二维数组中的查找
- 剑指Offer之 - 二维数组中的查找
- 剑指offer 3 -二维数组中的查找
- 剑指offer之二维数组中的查找
- [剑指Offer]5.二维数组中的查找
- Maven编译打包spark(2.1.0)源码及出现问题的解决方案(win7+Intellij IDEA)
- anconda多版本管理
- Codeforces Round #427 (Div. 2)D. Palindromic characteristics(DP+回文串)
- 5.多线程之内存可见性
- Xshell、Xftp、WinSCP的安装与使用
- 剑指offer:二维数组中的查找
- 关于使用JSONArray.fromObject()方法和引入net.sf.json包所需要的jar包支持
- toString(),直接输出(XX);IntValue parseInt valueOf ;equals “==”
- (四)JNI学习之C语言基础,构造类型
- 类加载
- ssh框架分析
- Codeforces 689E Mike and Geometry Problem 思维
- JMeter测试工具(一)下载及环境配置
- 为什么要搭建个人网站