zoukankan      html  css  js  c++  java
  • 074 Search a 2D Matrix 搜索二维矩阵

    编写一个高效的算法来搜索 m x n 矩阵中的一个目标值。该矩阵具有以下特性:
        每行中的整数从左到右排序。
        每行的第一个整数大于前一行的最后一个整数。
    例如,
    以下矩阵:
    [
      [1,   3,  5,  7],
      [10, 11, 16, 20],
      [23, 30, 34, 50]
    ]
    给定 目标值= 3,返回 true。
    详见:https://leetcode.com/problems/search-a-2d-matrix/description/

    Java实现:

    class Solution {
        public boolean searchMatrix(int[][] matrix, int target) {
            int row=matrix.length-1;
            int col=0;
            while(row>=0&&col<matrix[0].length){
                if(matrix[row][col]==target){
                    return true;
                }else if(matrix[row][col]>target){
                    --row;
                }else{
                    ++col;
                }
            }
            return false;
        }
    }
    

     C++实现:

    class Solution {
    public:
        bool searchMatrix(vector<vector<int>>& matrix, int target) {
            int i = matrix.size()-1;  
            int j = 0;  
            while (i >=0 && j <matrix[0].size())  
            {  
                if (target > matrix[i][j])  
                {  
                    ++j;  
                }  
                else if (target < matrix[i][j])  
                {  
                    --i;  
                }  
                else  
                {  
                    return true;  
                }  
            }  
            return false;  
        }
    };
    

     参考:https://blog.csdn.net/zhangxiao93/article/details/49835511

  • 相关阅读:
    echarts折线图
    利用echarts制作词云
    本周总结
    本周总结
    云服务器项目数据库连接超时问题解决
    iOS下载图片失败
    解决后台json数据返回的字段需要替换的问题
    设置User Agent
    Xcode升级到9.3之后pod问题
    gitLab创建自己的私有库
  • 原文地址:https://www.cnblogs.com/xidian2014/p/8709537.html
Copyright © 2011-2022 走看看