说明
1 | 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target。该矩阵具有以下特性: |
思路
- 从左下角或右上角搜索可以少搜索一个方向,以右上角开始为例(15): target= 5
- 15比5大,则15所有这一列所有元素都比5大,因此15所在的列就不用搜索了,肯定不会在这列的, column–;
- 4比5小,则向下搜索
复杂度
迭代/递归 最差都是O(n)
迭代
1 | var findNumberIn2DArray = function(matrix, target) { |
递归实现
1 | var findNumberIn2DArray2 = function(matrix, target) { |