題目鏈接:在二維數組中查找
我的思路
- 逐步縮小矩陣的范圍,當矩陣縮小到一個數字的時候,看是否該數字是目標數字。是true,不是false。或者當矩陣的邊界恰為目標數字的時候,是true。
- 縮小矩陣范圍的方法:從矩陣的右上角開始看,當前數字大于目標數字,則目標數字不會在當前列,當前數字小于目標數字,則目標數字不會在當前行。
-
看圖說話
在二維數組中查找.png
實現代碼
class Solution {
public:
bool Find(vector<vector<int> > array,int target) {
int row = array.size();
int col = array[0].size();
int i,j;
for (i=0,j=col-1;i<row && j>=0;)
{
if (array[i][j] == target)
{
return true;
}
if (array[i][j] > target)
{
j--;
continue;
}
if (array[i][j] < target)
{
i++;
}
}
return false;
}
};