题解 | #二维数组中的查找#

二维数组中的查找

https://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e

/* 由于每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序,因此可以将 target 与右上角的元素相比较,若 target 小于右上角的元素,则将 target 与右上角的倒数第二个元素相比较;若 target 大于右上角的元素,则将 target 与第二行的右上角的元素相比较,若 target 等于右上角的元素,则返回 true */

bool Find(int target, vector<vector<int> >& array) {
  int row = array.size();               // 行
  int col = array[0].size();            // 列
  int l = 0, r = col - 1;
  while (l < row && r >= 0) {
	if (array[l][r] > target) {
	  r--;
	} else if (array[l][r] < target) {
	  l++;
	} else {
	  return true;
	}
  }
  return false;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-07 12:04
毕业生招你惹你了,问一个发薪日来一句别看网上乱七八糟的你看哪个工作没有固定发薪日扭头就取消了面试就问了一句公司都是这个态度吗还搞上人身攻击了...
程序员小白条:呃呃呃,都还没面试,我都不会问这么细,何况通不通过,去不去都另说,你没实力和学历的话,在外面就这样,说实话没直接已读不回就不错了,浪费时间基本上
点赞 评论 收藏
分享
门口唉提是地铁杀:之前b站被一个游戏demo深深的吸引了。看up主页发现是个初创公司,而且还在招人,也是一天60。二面的时候要我做一个登录验证和传输文件两个微服务,做完要我推到github仓库,还要我加上jaeger和一堆运维工具做性能测试并且面试的时候投屏演示。我傻乎乎的做完以后人家跟我说一句现在暂时不招人,1分钱没拿到全是白干
你的秋招第一场笔试是哪家
点赞 评论 收藏
分享
认真搞学习:28小登的建议,投算法岗不要写什么物理竞赛,互联网+,多写点项目,用什么算法做了什么。还有本科算法是不可能的开发你这个也没有项目啊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务