剑指Offer-二维数组中的查找
来源:互联网 发布:php api 框架 编辑:程序博客网 时间:2024/06/05 18:07
二维数组中的查找
题目描述:
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
解题思路:
借http://www.cnblogs.com/zhuyf87/archive/2013/03/01/2938013.html博客一张图,
从右上角开始分析,思路如下:
源代码如下:
public static boolean Find(int[][] array, int target) { for (int j = array[0].length - 1, i = 0; j >= 0; j--) { if (i >= array[0].length) { return false; } System.out.println(array[i][j]); if (array[i][j] == target) { return true; } else if (array[i][j] < target) { j++; i++; } else { } } return false;}
其实从左下角也可以进行,大家可以思考一下,下面是我的源代码:
public static boolean Find1(int[][] array, int target) { for (int i = array.length - 1, j = 0; j < array[0].length; j++) { if (i < 0) { return false; } System.out.println(array[i][j]); if (array[i][j] == target) { return true; } else if (array[i][j] > target) { j--; i--; } else { } } return false;}
不过从左上角和右下角是不能解题的。
0 0
- 剑指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.二维数组中的查找
- LeetCode145-Binary-Tree-Postorder-Traversal
- BZOJ2734: [HNOI2012]集合选数|状压DP
- UVa 455 Periodic Strings
- LeetCode102-Binary-Tree-Level-Order-Traversal
- selenuim-webdriver注解之@FindBy、@FindBys、@FindAll的区别
- 剑指Offer-二维数组中的查找
- UVa 227 Puzzle
- NoSQL
- Android 高仿微信6.0主界面 切换图标变色
- 7个去伪存真的JavaScript面试题
- ios开发进阶之多线程02 NSOperation
- PCM Mix
- TCP/IP详解-TCP的超时和重传
- 剑指Offer-从头到尾打印链表