[LeetCode 74]Search a 2D Matrix
来源:互联网 发布:php.ini file uploads 编辑:程序博客网 时间:2024/04/30 03:26
题目链接:search-a-2d-matrix
/** * 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. * */public class SearchA2DMatrix {//134 / 134 test cases passed.//Status: Accepted//Runtime: 236 ms//Submitted: 0 minutes ago//时间复杂度 O(log(max(m,n)) 空间复杂度 O(1) static boolean searchMatrix(int[][] matrix, int target) { int m = matrix.length; //行数 int n = matrix[0].length;//列数 int up = 0; int down = m - 1; int left = 0; int right = n; //二分法查找所在行 while(up < down) { int mid = (down + up) / 2; if(matrix[mid][n - 1] > target) down = mid; else if(matrix[mid][n - 1] < target) up = mid + 1; else return true; } //二分法查找所在列 while(left < right) { int mid = (left + right) / 2; if(matrix[up][mid] > target) right = mid; else if(matrix[up][mid] < target) left = mid + 1; else return true; } return false; }public static void main(String[] args) {System.out.println(searchMatrix(new int[][]{{1, 3, 5, 7},{10, 11, 16, 20},{23, 30, 34, 50}}, 3));System.out.println(searchMatrix(new int[][]{{1, 1}}, 2));System.out.println(searchMatrix(new int[][]{{1,}, { 3}}, 2));System.out.println(searchMatrix(new int[][]{{1}}, 1));}}
0 0
- Leetcode 74 Search a 2D Matrix
- LeetCode 74: Search A 2D Matrix
- LeetCode 74 Search a 2D Matrix
- [leetcode 74] Search a 2D Matrix
- [LeetCode 74]Search a 2D Matrix
- leetcode || 74、Search a 2D Matrix
- leetcode-74 Search a 2D Matrix
- Leetcode[74]-Search a 2D Matrix
- 【Leetcode】Search a 2D Matrix #74
- LeetCode(74) Search a 2D Matrix
- Leetcode #74 Search a 2D Matrix
- Leetcode #74 Search a 2D Matrix
- leetcode 74: Search a 2D Matrix
- Leetcode#74||Search a 2D Matrix
- leetcode 74 : Search a 2D Matrix
- [Leetcode]#74 Search a 2D Matrix
- 【leetcode】【74】Search a 2D Matrix
- leetcode 74:Search a 2D Matrix
- G - Shuffle'm Up POJ 3087 模拟洗牌的过程,算作暴力搜索也不为过
- 系统的环境变量path的作用是什么
- 字符串处理系列:输入任何一串字符串,计算其中ABC子字符串的个数
- MongoDB 日志管理
- Maven开发过程实践之单元测试报告 test
- [LeetCode 74]Search a 2D Matrix
- MongoDB 清理数据
- JVM 线程堆栈分析过程详解
- warning:deprecated conversion from string constant to 'char *'解决方案
- 第二周项目2——三角形类2
- MongoDB mongostat、mongotop和实时监控工具motop
- CentOS普通用户添加sudo权限
- Maven使用Cargo实现自动化部署
- Unique Binary Search Trees