剑指offer_快速查找递增二维数组中是否存在目标

[编程题]二维数组中的查找
在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数
 
 
完整通过代码:
public class ArrayFind {
    public static void main(String[] args){
        int a[][]={{1,2,3},{4,5,6},{7,8,9}};
        System.out.println(Find(a,7));
        
    }
    public static boolean Find(int [][]array,int target){  // 核心函数
        boolean found = false;
        int rowNum = array.length;
        int colNum = array[0].length;
        int row = 0;
        int col = colNum - 1;
        if(array!=null && rowNum>0 && colNum>0){
            while(row < rowNum && col>=0){
                if(array[row][col]==target){
                    found=true;
                    break;
                }
                else if(array[row][col]<target){
                    row++;
                }
                else 
                    col--;                
            }            
        }
        return found;        
    }
}

 

转载于:https://www.cnblogs.com/snowwhite/p/4747126.html

你可能感兴趣的:(剑指offer_快速查找递增二维数组中是否存在目标)