zoukankan      html  css  js  c++  java
  • 二维数组中的查找-牛客网-剑指offer

    1.问题描述

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

    2.问题分析

      水平方向、垂直方向二重循环查找

    3.源代码

    package www.nowcoder.com.conquerOffer.array;
    
    /**
     * 二维数组中的查找
     * 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
     * http://www.nowcoder.com/practice/abc3fe2ce8e146608e868a70efebf62e?rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
     * @author sunny
     *
     */
    public class TwoDimensionalArrayFind {
        /**
         * 二维数组查找
         * @param array 二维数组
         * @param target 目标数字
         * @return 是否找到(true:找到;false:没找到) 
         */
        public boolean Find(int [][] array,int target) {
            //判断二维数组是否为空
            if(null == array || array.length <= 0)
                return false;
            for(int i = 0; i < array.length; i++){
                //判断一维数组是否为空
                int[] arr = array[i];
                if(null == arr || arr.length <= 0)
                    continue;
                for(int j = 0; j < arr.length; j++){
                    if(target == arr[j]){
                        System.out.println("array[" + i + "][" + j + "]=" + target);
                        return true;
                    }
                }
            }
            return false;
        }
        
        public static void main(String[] args) {
            int[][] array = new int[][]{{1, 2},{3, 4, 5, 6},{},{7, 8, 9, 10, 11},{12}};
    //        int[][] array = new int[][]{};
            TwoDimensionalArrayFind twoDimensionalArrayFind = new TwoDimensionalArrayFind();
            boolean isFind = twoDimensionalArrayFind.Find(array, 10);
            System.out.println(isFind);
        }
    }

    4.运行效果

    1 array[3][3]=10
    2 true
    View Code
  • 相关阅读:
    Linux进程监控命令
    自学Java第九天
    自学Java第十天
    自学Java第八天
    自学Java第七天
    自学Java第六天
    Java第五天
    Java练习第四天
    自学Java第三天
    自学Java第二天
  • 原文地址:https://www.cnblogs.com/sunny08/p/4893294.html
Copyright © 2011-2022 走看看