0
点赞
收藏
分享

微信扫一扫

LeetCode-074-搜索二维矩阵

Sophia的玲珑阁 2021-09-28 阅读 120
LeetCode

搜索二维矩阵

解法一:二分查找法
public class LeetCode_074 {
    public static boolean searchMatrix(int[][] matrix, int target) {
        // 从matrix数组的左下角开始查找
        int i = matrix.length - 1, j = 0;
        while (i >= 0 && j <= matrix[0].length - 1) {
            if (matrix[i][j] == target) {
                // 如果当前位置的值等于target,直接返回true
                return true;
            } else if (matrix[i][j] < target) {
                // 如果当前位置的值小于target,右移
                j++;
            } else if (matrix[i][j] > target) {
                // 如果当前未知的值大于target,上移
                i--;
            }
        }
        // 如果查找结束都没有找到和target相等的值,则返回false
        return false;
    }

    public static void main(String[] args) {
        int[][] matrix = new int[][]{{1, 3, 5, 7}, {10, 11, 16, 20}, {23, 30, 34, 60}};
        System.out.println(searchMatrix(matrix, 13));
    }
}
举报

相关推荐

0 条评论