二维数组查找(单行,单列有序二维数组查找)

二维数组中的查找

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

/*
二维数组有序数组查找
不断缩小查找数组的范围。
从后面最大开始查找是否有等于target的值,如果大于target,则该位置下面和右边的所有数都大于target,不满足。
找到到第一个小于target的位置时,下方数组都可能存在,则换得到下一行。
*/
class Solution {
public:
    bool Find(int target, vector<vector<int> > array){
        int m=array.size(),n=array[0].size(),row=0;
        while(n&&row<m){
            if(target==array[row][n-1])return true;
            if(target<array[row][n-1])n--;
            else row++;
        }
        return false;
    }
};
全部评论

相关推荐

10-15 20:01
已编辑
上海大学 Java
钉钉什么垃圾公司,约面鸽人
光年在眼前:不是坏事,感觉钉钉挺逆天的,二面结束还给我留作业,让我使用钉钉和看最新的发布会,然后说感受,我是应该不会去,三面直接拒绝不面了
点赞 评论 收藏
分享
刷牛客的我很豁达:你是不是对算法有什么误解,你没手握两篇顶刊顶会,还想搞算法岗,有顶刊顶会在算法岗算才入门
点赞 评论 收藏
分享
10-14 21:00
门头沟学院 Java
吃花椒的狸猫:这个人说的倒是实话,特别是小公司,一个实习生哪里来的那么多要求
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务