每日一练(二)

175 阅读1分钟

题目:编写一个高效的算法来搜索m * n矩阵中的目标值。该矩阵具有以下特性:

  • 每行中的整数从左到右排序。
  • 每行的第一个整数大于前一行的最后一个整数。

例如,

以下矩阵:

[
    [1, 3, 5, 7],
    [10, 11, 16, 20],
    [23, 30, 34, 50]
]

给定目标值=3,返回true

我的答案:

/**
 * @param {number[][]} matrix
 * @param {number} target
 * @return {boolean}
 */
var searchMatrix = function(matrix, target) {
    var tempArr = [].concat.apply([], matrix);
    if (tempArr.length === 0) {
        return false;
    }
    return tempArr.indexOf(target) > -1;
};