劍指offer-01 二維數組中的查找

劍指offer-01 二維數組中的查找

題目描述

在一個二維數組中(每個一維數組的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含有該整數。

題目類別

數組

解題思路

從左上角開始判斷,若小於給定值,向下移動一行,若大於給定值,向左移動一行,直到找到目標值。

具體實現

class Solution {
public:
    bool Find(int target, vector<vector<int> > array) {
        int row = array.size();
        if(row == 0) return false;
        int col = array[0].size();
        int x = 0,y = col - 1;
        while( x < row && y >= 0){
            if(array[x][y] == target) return true;
            if(array[x][y] < target ){
                x++;
            }else{
                y--;
            }
        }
        return false;
    }
};
發佈了37 篇原創文章 · 獲贊 5 · 訪問量 8096
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章