程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> LeetCode240:Search a 2D Matrix II

LeetCode240:Search a 2D Matrix II

編輯:C++入門知識

LeetCode240:Search a 2D Matrix II


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

  • Integers in each row are sorted in ascending from left to right.
  • Integers in each column are sorted in ascending from top to bottom.

    For example,

    Consider the following matrix:

    [
      [1,   4,  7, 11, 15],
      [2,   5,  8, 12, 19],
      [3,   6,  9, 16, 22],
      [10, 13, 14, 17, 24],
      [18, 21, 23, 26, 30]
    ]
    

    Giventarget=5, returntrue.

    Giventarget=20, returnfalse.

    Subscribeto see which companies asked this question

    //時間復雜度為O(m+n)
    class Solution{
    public:
    	bool searchMatrix(vector>& matrix, int target) {
    		int m = matrix.size();
    		int n = matrix[0].size();
    
    		int i = 0, j = n - 1;
    		while (i < m && j >= 0)
    		{
    			if (matrix[i][j] == target)
    				return true;
    			else if (matrix[i][j] > target)
    				j--;
    			else
    				i++;
    		}
    		return false;
    	}
    };

    \

     

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved