01 二维数组的查找
//题目: //在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。
请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
//如果用一维数组表示,则前提必须知道它的行数和列数
//如果用容器vector包含容器元素,即vector> array,则行数应表示为rowCount =array.size(),
列数表示为colCount = array[0].size()
C++ Code
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
class Solution
{ public: bool Find(int target, vector<vector<int> > array) { int cols = array[0].size(); int rows = array.size(); bool result = false; int i; int j; for (i = 0, j = cols-1; i <rows && j>=0;) { if (target == array[i][j]) { result = true; return result; } if (target < array[i][j]) { j--; continue; } if (target> array[i][j]) { i++; continue; } } return result; } }; |
在代码的世界尽情的翱翔吧!