题目考察的知识点:二分查找

题目解答方法的文字分析:先找出特定值在那一行,再找准确的值,时间复杂度为O(m+n)

本题解析所用的编程语言:c++

class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param matrix int整型vector<vector<>> 
     * @param target int整型 
     * @return bool布尔型
     */
    bool searchMatrix(vector<vector<int> >& matrix, int target) {
        // write code here
        if (matrix[0][0] < target)
            return false;
        int i = 0;
        for (i = 0; i < matrix.size(); ++i)
            if (matrix[i][0] < target)
                break;
        --i;
        for (int j = 0; j < matrix[0].size(); ++j)
            if (matrix[i][j] == target)
                return true;
        return false;
    }
};