class Solution {
public:
bool Find(int target, vector<vector<int> > array) {
int cols = (int)array.size();
int lins = (int)array[0].size();
int col = 0;
int lin = lin - 1;
while (col >= 0 && lin < cols)
{
if (target == array[col][lin])
{
return true;
}
else if (target < array[col][lin])
{
if (lin == 0)
return false;
lin = lin - 1;
}
else if (target > array[col][lin])
{
if (col < cols )
return false;
col = col + 1;
}
}
}
};
public static boolean Find2(int[][] array, int target) {
int rowsNum = array.length;
int colsNum = array[0].length;
int i = rowsNum - 1;
int j = 0;
while (i >= 0 && j < colsNum) {
if (array[i][j] > target) {
i--;
}
else if (array[i][j] < target) {
j++;
}
else {
return true;
}
}
return false;
}