题解 | #二维数组中的查找#
二维数组中的查找
http://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e
public class Solution { public boolean Find(int target, int [][] array) { //获取二维数组的行 int row = array.length-1; //获取二维数组的列 int col = array[0].length-1; //定位到左下角 int i=row,j =0; //当 0<=i<=row 和 0<=j<=col 时循环 while(i<=row&&i>=0&&j<=col&&j>=0){ //如果目标值大于数组中的值,说明目标值在当前数组位置的右边,所以列j++ if(target > array[i][j]) j++; //同理,目标值小于数组当前值的话,说明目标值在当前值的上一行,所以 i--; else if(target < array[i][j]) i--; else if(array[i][j]==target) return true; } return false; } }