import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param matrix int整型二维数组 * @param target int整型 * @return bool布尔型 */ public boolean searchMatrix (int[][] matrix, int target) { int start = 0; int end = matrix[0].length - 1; while ((start < matrix.length) && (end >= 0)) { if (target > matrix[start][end]) { end--; } else if (target < matrix[start][end]) { start++; } else { return true; } } return false; } }
本题知识点分析:
1.二分查找
2.矩阵
3.数组遍历
4.数学模拟
本题解题思路分析:
1.start代表二维数组的行
2.end代表二维数组的列
3.由于矩阵是降序排列的,因此可以用二分查找寻找mid值,道理和普通的二分查找一样