Search a 2D Matrix

来源:互联网 发布:网络拒绝接入华为 编辑:程序博客网 时间:2024/05/21 08:35
public class Solution {    public boolean searchMatrix(int[][] matrix, int target) {        if (matrix == null || matrix.length < 1 || matrix[0].length < 1) {            return false;        }        int row = matrix.length;        int col = matrix[0].length;        int start = 0;        int end = row * col - 1;        while (start <= end) {            int mid = start + (end - start) / 2;            int r = mid / col;            int c = mid % col;            if (matrix[r][c] == target) {                return true;            } else if (matrix[r][c] < target) {                start = mid + 1;            } else {                end = mid - 1;            }        }        return false;    }}

0 0
原创粉丝点击