Search a 2D Matrix
来源:互联网 发布:彩票数据库设计 编辑:程序博客网 时间:2024/06/05 15:27
Search a 2D Matrix
Write an efficient algorithm that searches for a value in anm x n matrix. This matrix has the following properties:
- Integers in each row are sorted from left to right.
- The first integer of each row is greater than the last integer of the previous row.
For example,
Consider the following matrix:
[ [1, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34, 50]]
Given target = 3
, return true
.
class Solution {public: bool searchMatrix(vector<vector<int> > &matrix, int target) { if (matrix.empty()) return false; int m = matrix.size(); int n = matrix[0].size(); int first = 0; int last = m*n; while (first < last) { int mid = first + (last - first) /2; int value = matrix[mid /n][mid %n]; if(value == target) return true; else if (value < target) first = mid +1; else last = mid; } return false; }};
0 0
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D Matrix
- Search a 2D matrix
- Search a 2D matrix
- 【JavaScript】数组定义末尾请不要留下逗号
- POJ3468---线段树模版--A Simple Problem with Integers
- 软键盘开关控制
- wordpress 上传主题 权限
- Java RMI远程方法调用
- Search a 2D Matrix
- git学习笔记一(linux)(安装与创建版本库)
- 设置控件可见与不可见
- android 使用drawerLayout实现侧滑菜单
- 游戏原画
- xml的基础知识
- 优秀开源代码解读之JS与iOS Native Code互调的优雅实现方案
- 常见的几种java.net.SocketException
- cin.ignore()函数的用法