zoukankan      html  css  js  c++  java
  • LeetCode Search a 2D Matrix

    Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties:

    • Integers in each row are sorted from left to right.
    • The first integer of each row is greater than the last integer of the previous row.

    For example,

    Consider the following matrix:

    [
      [1,   3,  5,  7],
      [10, 11, 16, 20],
      [23, 30, 34, 50]
    ]
    

    Given target = 3, return true.

     1 public class Solution {
     2     public boolean searchMatrix(int[][] matrix, int target) {
     3             int line=0;
     4         if (matrix.length<1) {
     5             return false;
     6         }
     7         if (target<matrix[0][0]) {
     8             return false;
     9         }
    10         for (int i = 1; i < matrix.length; i++) {
    11             if (matrix[i][0]>target) {
    12                 line=i-1;
    13                 break;
    14             }
    15             if (matrix[i][0]==target) {
    16                 return true;
    17             }
    18         if (matrix[i][matrix[i].length-1]>=target) {
    19             line=i;
    20         }            
    21         }
    22 
    23         for (int is : matrix[line]) {
    24             if (is==target) {
    25                 return true;
    26             }
    27         }
    28         return false;
    29     }
    30 }
  • 相关阅读:
    IOS照相
    起学习iOS开发专用词汇
    django[post与get测试]
    起名字好难啊!(初识Django)
    MTV模型
    Django安装以及介绍
    数据库操作
    数据库其它操作
    数据库经典习题,
    数据库基本操作
  • 原文地址:https://www.cnblogs.com/birdhack/p/4028391.html
Copyright © 2011-2022 走看看