[leetcode]240. Search a 2D Matrix II
2016-03-27 11:04
423 查看
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:
Given target =
Given target =
Solution:
matrix[row][col]从右上角开始,向左下角移动。matrix[row][col] > target, 说明col列不存在target, matrix[row][col] < target, 说明row行不存在target
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.
Solution:
matrix[row][col]从右上角开始,向左下角移动。matrix[row][col] > target, 说明col列不存在target, matrix[row][col] < target, 说明row行不存在target
bool searchMatrix(int** matrix, int matrixRowSize, int matrixColSize, int target) { int row = 0; int col = matrixColSize - 1; while ((row < matrixRowSize) && (col >= 0)) { if (matrix[row][col] == target) return true; else if (matrix[row][col] > target) col--; else row++; } return false; }
相关文章推荐
- 正则表达式中的"^"这个符号的一些思考
- java中的反射
- 【JAVA设计模式】简单工厂模式(Simple Factory Pattern)
- Shape 文件格式解释
- 数字反演
- 299. Bulls and Cows
- JavaEE初学者
- CDOJ 1304 Infinity Set
- 图解CentOS系统启动流程
- 详解c++指针的指针和指针的引用
- 简单的Ant命令
- java中HashMap详解
- 初学GraphicsView
- 【USACO 5.5.2】Hidden Password
- SZU 7
- Kubernetes1.2新特性分析(一)
- JavaScript中this详解
- welogic不能启动主服务器,出现 java.lang.NumberFormatException: null错误
- J2EE增删改查个人总结
- MapReduce和Tez对比