[leetcode]240. Search a 2D Matrix II
来源:互联网 发布:mac docker ycm 编辑:程序博客网 时间:2024/06/06 09:27
题目
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 in ascending from left to right.
- Integers in each column are sorted in ascending from top to bottom.
For example,
Consider the following matrix:
[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30]]
Given target = 5
, return true
.
Given target = 20
, return false
.
代码
1.
/* * Author:郭方舟 * Problem:240—Search_a_2D_Matrix II * Algorithm:遍历行,每行上的元素用二分查找 * time:2017/03/16 * time complexity is O(mlog2(n)) * space complexity is O(1) */ /*public boolean searchMatrix(int[][] matrix, int target) { if(matrix == null || matrix.length == 0 || matrix[0].length == 0){return false;}int m = matrix.length; //行数int n = matrix[0].length; //列数for(int i = 0 ; i < m;i++){int start = 0,end = n - 1;while(start <= end){int mid = start + (end - start)/2;if(matrix[i][mid] == target){return true;}else if(matrix[i][mid] < target){start = mid +1;}else{end = mid -1;}}}return false;}*/2.
/* * Author:郭方舟 * Problem:240—Search_a_2D_Matrix II * Algorithm:刚开始把右上角的元素跟 target进行比较,如果它比target大,列数就减一 ;如果它比target小 ,行数就加一 * time:2017/03/16 * time complexity is O(m+n) * space complexity is O(1) * beats:48.57% */public boolean searchMatrix(int[][] matrix, int target) {if(matrix == null || matrix.length == 0 || matrix[0].length == 0){return false;}int m = matrix.length;//行数int n = matrix[0].length;//列数int i = 0 , j = n -1;while( i < m && j >=0){if(matrix[i][j] < target){i++;}else if(matrix[i][j] > target){j--;}else{return true;}}return false;}}
0 0
- #leetcode#Search a 2D Matrix II
- [LeetCode] Search a 2D Matrix II
- leetcode: Search a 2D Matrix II
- leetcode - Search a 2D Matrix II
- [leetcode] Search a 2D Matrix II
- 【leetcode】Search a 2D Matrix II
- Leetcode: Search a 2D Matrix II
- LeetCode Search a 2D Matrix II
- [Leetcode]Search a 2D Matrix II
- [LeetCode]Search a 2D Matrix II
- LeetCode Search a 2D Matrix II
- [LeetCode]Search a 2D Matrix II
- LeetCode || Search a 2D Matrix II
- LeetCode----Search a 2D Matrix II
- Leetcode: Search a 2D Matrix II
- *LeetCode-Search a 2D Matrix II
- Search a 2D Matrix II -- leetcode
- leetcode | Search a 2D Matrix II
- oracle中DECIMAL(m,n)在MySql使用方法
- python 图像问题
- jvisualvm分析工具
- 设计模式:观察者模式
- 动态控制状态栏显示与隐藏
- [leetcode]240. Search a 2D Matrix II
- iTunes Connect上传APP屏幕快照图片尺寸和屏幕分辨率大小
- 461. Hamming Distance
- 纪念自己第一个人品爆发
- A
- http://blog.csdn.net/painsonline/article/details/7183613
- 做课题调查的方法
- 图像滤波空间域与频域
- Json数据解析在Unity3d中的应用