本文共 694 字,大约阅读时间需要 2 分钟。
由于这个二维数组的结构是按行递增、按列递减排列的,我们可以从右上角开始搜索目标值。具体来说,右上角是数组的黄金位置,因为它几乎同时包含了行和列的高值特征。
我们可以通过以下步骤进行搜索:
这种方法有助于我们快速缩小搜索范围,只关注可能存在目标值的区域,从而提高搜索效率。
/** * @param {number[][]} matrix * @param {number} target * @return {boolean} */var findNumberIn2DArray = function (matrix, target) { if (!matrix.length) return false; let i = 0, j = matrix[0].length - 1; while (i < matrix.length && j >= 0) { if (matrix[i][j] === target) return true; else if (matrix[i][j] < target) i++; else j--; } return false;};
转载地址:http://bcxpz.baihongyu.com/