请写出一个高效的在m*n矩阵中判断目标值是否存在的算法,矩阵具有如下特征: 每一行的数字都从左到右排序 每一行的第一个数字都比上一行最后一个数字大 例如: 对于下面的矩阵: [ [1, 3, 5, 9], [10, 11, 12, 30], [230, 300, 350, 500] ] 要搜索的目标值为3,返回true;
示例1
输入
[[1,3,5,9],[10,11,12,30],[230, 300, 350, 500]],3
输出
true
加载中...
import java.util.*; public class Solution { /** * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ public boolean searchMatrix (int[][] matrix, int target) { // write code here } }
class Solution { public: /** * * @param matrix int整型vector
> * @param target int整型 * @return bool布尔型 */ bool searchMatrix(vector
>& matrix, int target) { // write code here } };
# # # @param matrix int整型二维数组 # @param target int整型 # @return bool布尔型 # class Solution: def searchMatrix(self , matrix , target ): # write code here
/** * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ function searchMatrix( matrix , target ) { // write code here } module.exports = { searchMatrix : searchMatrix };
# # # @param matrix int整型二维数组 # @param target int整型 # @return bool布尔型 # class Solution: def searchMatrix(self , matrix , target ): # write code here
package main /** * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ func searchMatrix( matrix [][]int , target int ) bool { // write code here }
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # @param matrix int整型二维数组 # @param target int整型 # @return bool布尔型 # class Solution def searchMatrix(matrix, target) # write code here end end
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ def searchMatrix(matrix: Array[Array[Int]],target: Int): Boolean = { // write code here } }
object Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ fun searchMatrix(matrix: Array
,target: Int): Boolean { // write code here } }
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ public boolean searchMatrix (int[][] matrix, int target) { // write code here } }
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ export function searchMatrix(matrix: number[][], target: number): boolean { // write code here }
public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ func searchMatrix ( _ matrix: [[Int]], _ target: Int) -> Bool { // write code here } }
struct Solution{ } impl Solution { fn new() -> Self { Solution{} } /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ pub fn searchMatrix(&self, matrix: Vec
>, target: i32) -> bool { // write code here } }
[[1,3,5,9],[10,11,12,30],[230, 300, 350, 500]],3
true