我是靠谱客的博主 玩命自行车,最近开发中收集的这篇文章主要介绍牛客网 剑指offer解题笔记 (一)二维数组中的查找,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目描述

在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

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

思路:从左下角(右上角也可)开始比对,根据大小进行上移或下移,如果从左上角或左下角的话,无法得出移动方向。

判断语句中,没有写else导致了数组越界。

最后

以上就是玩命自行车为你收集整理的牛客网 剑指offer解题笔记 (一)二维数组中的查找的全部内容,希望文章能够帮你解决牛客网 剑指offer解题笔记 (一)二维数组中的查找所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部