首页 > 试题广场 > 二维数组中的查找
[编程题]二维数组中的查找
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
头像 叫我皮卡丘
发表于 2019-08-08 16:59:32
【剑指 offer】二维数组中的查找 -- Java 实现 一、暴力法 1. 分析 挨个遍历数组,如果找到就返回 true 2. 代码 public class Solution { public boolean Find(int target, int [][] array) { 展开全文
头像 神鹰梦泽
发表于 2019-07-26 15:35:13
重点: 数组为空 排好序 上面行的右边的数也可以比下面行左边的数大 顺序查找 def Find(self, target, array): # write code here if len(array)==0 or len(array[0])==0: r 展开全文
头像 凉风起天末
发表于 2019-08-13 22:51:14
分享五种解题方法,仅为拓宽思路:(注:如果您的代码出现了段错误问题,可能是没有考虑到空数组,健壮性也是算法的一部分) 一、左下/右上元素移动法:十分简单巧妙,我也是看了徘徊的路人甲的题解才后知后觉;复杂度为O(N),详见链接题解:链接:https://www.nowcoder.com/questio 展开全文
头像 TLE
发表于 2019-08-25 09:52:05
思路:从左下角/右上角开始遍历,每走一步就可以剔除一行或者一列。 复杂度:O(m+n) public class Solution { public boolean Find(int target, int[][] array) { if (array == null) { 展开全文
头像 清心_恋旧
发表于 2019-07-26 11:26:56
public boolean Find(int target, int [][] array) { boolean result = false; int count = array.length; for (int i=0;i<count;i++){ int num = array[i].l 展开全文