题解 | #二维数组中的查找#

二维数组中的查找

http://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e

二分查找法,二维矩阵中的元素是有序的,从左上角到右下角的方向上增大,因此,其副对角线上的值基本上说没一条主对角线上元素的中间值,那么,从右上角向左下角搜索并调整i,j的位置。

class Solution {
public:
    bool Find(int target, vector<vector<int> > array) {
        int n=array.size();
        int m=array[0].size();
        for(int i=0,j=m-1; i<n && j>=0;){
            if(array[i][j]==target) return true;
            if(array[i][j]>target) j--;
            else i++;
        }
        return false;
    }
};
全部评论

相关推荐

10-05 11:11
海南大学 Java
投票
理想江南137:感觉挺真诚的 感觉可以试一试
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务