新手练手感--leetCode二维数组的查找
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
//左上角数最小,右下角最大 //如果从右下角往回数,则每次往左还是网上都不确定,比较麻烦 //但是如果从左下角往上或者右上角往下都很确定的只有一条路 //我们这么从右上角往左和下,走,则target > array[i][j],往下走,否则往左走 public class Solution { public boolean Find(int target, int [][] array) { int row = array.length; int col = array[0].length; int i = 0; int j = col -1; if(row == 0 || col == 0) { return false; } if(target > array[row - 1][col - 1]) { return false; } while(j >= 0 && i <= row - 1) { if(array[i][j] > target) { j--; } else if(array[i][j] < target) { i++; } else { return true; } } return false; } }