澳门永利娱乐总站往左移一位到8,往左移一位到8

题材:在一个二维数组中,每一行都依据从左到右递增的顺序排序,每一列都听从从上到下递增的相继排序。请达成一个函数,输入那样的一个二维数组和一个平头,判断数组中是或不是带有该整数。

题材:在一个二维数组中,每一行都遵从从左到右递增的相继排序,每一列都依照从上到下递增的逐一排序。请达成一个函数,输入那样的一个二维数组和一个整数,判断数组中是或不是含有该整数。

 1  2  8  9

 1  2  8  9

2  4  9  12

2  4  9  12

4  7  10  13

4  7  10  13

思路:

思路:

依照数组的特点,从右上角初阶查找(也可从左下角),若超越,则往下,若小于,则往左。如搜寻上面数组中的7,从9开首,9>7,往左移一位到8,8>7,再往左移一位到2,2<7,往下移一位到4,4<7,再往下移一位得7==7。

按照数组的性状,从右上角先导查找(也可从左下角),若当先,则往下,若小于,则往左。如搜寻下边数组中的7,从9发端,9>7,往左移一位到8,8>7,再往左移一位到2,2<7,往下移一位到4,4<7,再往下移一位得7==7。

 

 

参照代码:

参照代码:

public class Solution {
    public boolean Find(int target, int [][] array) {
        int row = array.length;
        int colum = array[0].length;
        for(int i=0;i<row;i++){
            for(int j=colum-1;j>=0;j--){
                if (target == array[i][j]){
                    return true;
                   }else if(target < array[i][j]){
                    continue;
                }else{
                    break;
                }
            }
        }
        return false;

    }
}
public class Solution {
    public boolean Find(int target, int [][] array) {
        int row = array.length;
        int colum = array[0].length;
        for(int i=0;i<row;i++){
            for(int j=colum-1;j>=0;j--){
                if (target == array[i][j]){
                    return true;
                   }else if(target < array[i][j]){
                    continue;
                }else{
                    break;
                }
            }
        }
        return false;

    }
}

 

 

相关文章