二维数组中的查找

题目描述

在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
 1 bool Find(vector<vector<int> > array,int target) {
 2     //循环比较target和矩阵最后一行数据的大小,当target<array[array.size()-1][j++],循环遍历那一列,
 3         //当找到=target就return true 
 4         //当array[i--][j]<target,跳出循环
 5         for(int j=0;j<array[array.size()-1].size();j++)
 6         {
 7             if(target<=array[array.size()-1][j])
 8             {
 9                 for(int i=array.size()-1;i>=0;i--)
10                 {
11                     if(array[i][j]==target)
12                         return true;
13                     if(array[i][j]<target)
14                         break;
15                 }
16             }
17             
18         }
19         return false;
20     }

 

posted @ 2015-09-18 23:09  ChessChan  阅读(118)  评论(0编辑  收藏  举报