LeetCode Search a 2D Matrix
来源:互联网 发布:windows xp 桌面主题 编辑:程序博客网 时间:2024/06/07 16:56
题目
Write an efficient algorithm that searches for a value in an m 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) { int m=matrix.size(),n;if(m==0)return false;elsen=matrix[0].size();int first=0,last=m*n-1,mid;//头,尾,中while(first<=last)//二分查找{mid=(first+last)/2;if(matrix[mid/n][mid%n]==target)return true;else if(matrix[mid/n][mid%n]>target)last=mid-1;elsefirst=mid+1;}return false; }};
0 0
- [leetcode][Search] Search a 2D Matrix
- LeetCode: Search a 2D Matrix
- LeetCode Search a 2D Matrix
- [Leetcode] Search a 2D Matrix
- LeetCode : Search a 2D Matrix
- [LeetCode] Search a 2D Matrix
- Leetcode 74 Search a 2D Matrix
- leetcode 90: Search a 2D Matrix
- [LeetCode]Search a 2D Matrix
- [Leetcode] Search a 2-D matrix
- [Leetcode]Search a 2D Matrix
- [leetcode]Search a 2D Matrix
- LeetCode-Search a 2D Matrix
- [leetcode] Search a 2D Matrix
- LeetCode - Search a 2D Matrix
- LeetCode:Search a 2D Matrix
- LeetCode 74: Search A 2D Matrix
- leetcode之Search a 2D Matrix
- Ubuntu 安装Chrome步骤
- effective java (12) 考虑实现Comparable接口
- 设计模式学习--Prototype
- Android View系统解析(下)
- 【项目开发】Discuz头部导航的代码
- LeetCode Search a 2D Matrix
- Maven 常用命令整理
- 中缀式变后缀式
- JVM规范学习:签名多态性
- 简单DP 免费馅饼 HDU 1176
- 【项目开发】DISCUZ论坛添加页头及页尾背景图片的几种方法
- 64位WIN7+oracle11g+plsql安装
- 设计模式-结构模式之桥梁模式Bridge
- Oracle笔记之子查询