欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

剑指offer -- 二维数组中的查找

程序员文章站 2022-07-15 16:16:37
...
  • 描述:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
  • 分析:LeetCode有一道相同题目,具体详解可以参考我的这篇博客 ---- Leetcode problem240. Search a 2D Matrix II
  • 代码:
class Solution {
public:
    bool Find(int target, vector<vector<int>> array) {
        if (array.empty()) return false;
        int height = 0;
        int width = array[0].size() - 1;
        while (height < array.size() && width >= 0) {
            if (target == array[height][width]) return true;
            else if (target < array[height][width]) width--;
            else height++;
        }
        return false;
    }
};