一开始的思路,因为矩阵中的元素向右或者向右是递增的,考虑将二维数组压缩成一个一维数组,然后二分查找。
但是仔细分析,发现这样不是很靠谱,因为可以写个例子看看,从第一行开始从左向右,从上到下地将元素压入一维数组中,并不是严格的单调递增,所以不适合用二分查找。
看了牛友们的思路后,发现了非常秒的方法。即从左下角开始,与待查元素进行比较,如果比矩阵中的元素小,则向上移动;如果比矩阵中的元素大,则向右移动。
一开始的思路,因为矩阵中的元素向右或者向右是递增的,考虑将二维数组压缩成一个一维数组,然后二分查找。
但是仔细分析,发现这样不是很靠谱,因为可以写个例子看看,从第一行开始从左向右,从上到下地将元素压入一维数组中,并不是严格的单调递增,所以不适合用二分查找。
看了牛友们的思路后,发现了非常秒的方法。即从左下角开始,与待查元素进行比较,如果比矩阵中的元素小,则向上移动;如果比矩阵中的元素大,则向右移动。