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

二维数组中的查找

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

class Solution {
public:
    bool Find(int target, vector<vector<int> > array) {
        int m = array.size();
        int n = array[0].size();
        if(m == 0 || n == 0) return false;
        int i = 0 , j = 0 , now = array[0][0];
        while(1){
            if(now == target) return true;
            if(j<n-1){
                if(now < target && array[i][j+1] <= target){
                    now = array[i][j+1];
                    j = j+1;
                    continue;
                }
                if(j > 0 && array[i][j-1] >= target){
                    now = array[i][j-1];
                    j = j - 1;
                    continue;
                }
                if(i < m-1){
                    now = array[i+1][j];
                    i = i + 1;
                    continue;
                }
            }
            if(i<m-1){
                now = array[i+1][j];
                i = i + 1;
                if(array[i][j-1] >= target){
                    now = array[i][j-1];
                    j = j - 1;
                    continue;
                }
                continue;
            }
            break;
        }
        return false;
    }
};

全部评论

相关推荐

Giselle_Po...:1. 可能是你投递的定位不是很对,虽然硕士是985,但是本科属于普通本科,如果你投互联网大厂的话大概率会被卡本科,中厂可能会更适合你。2. 简历观感不是很好,个人感觉看的很费劲。最开始手机邮箱那堆字啥的我建议你删掉,字太多了,我作为一个路人已经有点没耐心看了,留手机邮箱姓名即可了。3. 学历背景本硕格式要尽量统一,上面核心课程,你下面写gap和校园经历,有点分裂。而且本科绩点3.5以下不建议写,因为你们学校换算完有点吃亏。你要想保留就留这个10%就好了,一般3.5很多学校换算完对应20-25%,有参照你这个占比很奇怪,初筛人家不会细看你后面写的奖学金那些的。校园经历另起一个part会更好。4. 你的实习和项目竞赛都超级好,超过起码80-90%的人,但是感觉你的表述可以改改语句,因为现在这种表述有点AI话,然后可以再量化一点
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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