二维数组中的查找

题目描述

在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。

 

题目思路

从左上角开始对比,如果比他小,则第一行都不用在做对比了,如果比他大 则该列不用做对比了

 

题目代码

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

 

posted on 2018-08-24 09:03  canacezhang  阅读(141)  评论(0编辑  收藏  举报