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

// vectorTest.cpp : 定義控制檯應用程序的入口點。
//


#include "stdafx.h"
#include "iostream"
using namespace std;
#include <vector>


class Solution {
public:
bool Find(vector<vector<int> > array, int target) {
int i = 0, j = 0;
int m = array.size();
int n = array[i].size();
bool isFound = false;
for (i = 0, j = n - 1; isFound == false&&j>=0&&i<m;)
{
if (target == array[i][j])
{
isFound = true;
break;
}
if (target < array[i][j])
j--;
else
i++;
}
cout << "isFound:" << isFound << endl;
return isFound;
}
};
int _tmain(int argc, _TCHAR* argv[])
{
vector<vector<int> > array = { { 1, 2, 3 }, { 2, 3, 4 }, { 3, 4, 5 } };
Solution s;
s.Find(array, 6);
system("pause");
return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章