美文网首页
1.二维数组中的查找

1.二维数组中的查找

作者: _YuFan | 来源:发表于2018-08-23 23:50 被阅读0次

    时间限制:1秒 空间限制:32768K 热度指数:827840

    本题知识点: 查找

    算法知识视频讲解

    题目描述

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

    思路:
    1.数组从左到右从上到下递增。
    2.取数组最左下角的点。
    3.如果目标值大于这个点,则向右移。
    4.如果目标值小于这个点,则向上移。

    题解:

    #include<vector>
    using namespace std;
    class Solution {
    public:
        bool Find(int target, vector<vector<int> > array) {
            int row = array.size() - 1;
            int col = 0;
            while (row >= 0 && col < array[0].size()) {
                if (target == array[row][col]) return true;
                else if (target > array[row][col]) {
                    col++;
                }
                else {
                    row--;
                }
            }
            return false;
        }
    };
    

    相关文章

      网友评论

          本文标题:1.二维数组中的查找

          本文链接:https://www.haomeiwen.com/subject/wayviftx.html