总结:
1.可以从右上角或左下角开始查找target,如果相等返回true;如果当前值大于target,那就删除这一列元素;如果当前值小于target,那就删除这一行元素。之所以是右上角或左下角,是因为从这两个位置查找,缩小范围才不会有重复部分,简化了查找。
2.还要考虑数组为空的情况

public class Solution {
    public boolean Find(int target, int [][] array) {
        int row = array.length;
        int col = array[0].length;
        if(row==0&&col==0)
            return false;
        int rowIndex = 0,colIndex = col-1;
        while(rowIndex>=0&&rowIndex<row&&colIndex>=0&&colIndex<col){
            if(array[rowIndex][colIndex]==target)
                return true;
            else if(array[rowIndex][colIndex]>target){
                colIndex = colIndex-1;
            }else{
                rowIndex = rowIndex+1;
            }

        }
        return false;
    }
}