基于mvc的网站开发,北京网站建设 博客,网页制作与设计千年之恋代码,吉林省建设工程造价网站题目
在一个二维数组array中#xff08;每个一维数组的长度相同#xff09;#xff0c;每一行都按照从左到右递增的顺序排序#xff0c;每一列都按照从上到下递增的顺序排序。请完成一个函数#xff0c;输入这样的一个二维数组和一个整数#xff0c;判断数组中是否含有该…题目
在一个二维数组array中每个一维数组的长度相同每一行都按照从左到右递增的顺序排序每一列都按照从上到下递增的顺序排序。请完成一个函数输入这样的一个二维数组和一个整数判断数组中是否含有该整数。
[
[1,2,8,9], [2,4,9,12], [4,7,10,13], [6,8,11,15]
]
给定 target 7返回 true。
给定 target 3返回 false。
数据范围矩阵的长宽满足 0≤n,m≤500 矩阵中的值满足 0≤val≤10^9 进阶空间复杂度 O(1) 时间复杂度 O(nm)
示例1
输入7,[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]
返回值true
说明存在7返回true
示例2
输入1,[[2]]
返回值false
示例3
输入3,[[1,2,8,9],[2,4,9,12],[4,7,10,13],[6,8,11,15]]
返回值false
说明不存在3返回false 解答
源代码
import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定请勿修改直接返回方法规定的值即可** * param target int整型 * param array int整型二维数组 * return bool布尔型*/public boolean Find (int target, int[][] array) {// write code herereturn mySolution(target, array, 0, array[0].length - 1);}public boolean mySolution (int target, int[][] array, int m, int n) {if (m array.length || n 0) {return false;}if (array[m][n] target) {return true;}if (array[m][n] target) {n--;} else {m;}return mySolution(target, array, m, n);}
}
总结
这道题和LeetCode240相同。
题解详见【LeetCode】240.搜索二维矩阵Ⅱ