leetcode 240. Search a 2D Matrix II 矩阵搜索 + 右上角搜索
来源:互联网 发布:飞行器 知乎专栏 编辑:程序博客网 时间:2024/05/18 02:33
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 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]
]
Given target = 5, return true.
Given target = 20, return false.
对于排序好的矩阵,右上角开始搜索。
这道题很棒。
建议和leetcode 378. Kth Smallest Element in a Sorted Matrix 和 leetcode 668. Kth Smallest Number in Multiplication Table 有序矩阵搜索
代码如下:
/* * 右上角搜索 * */class Solution { public boolean searchMatrix(int[][] matrix, int target) { if(matrix==null || matrix.length<=0) return false; int i=0 , j=matrix[0].length-1; while(i<matrix.length && j>=0) { if(matrix[i][j]==target) return true; else if(matrix[i][j]>target) j--; else i++; } return false; }}
下面是C++的做法,就是一个右上角搜索的做法,很经典
代码如下:
#include <iostream>#include <alogrithm>#include <set>#include <map>#include <vector>#include <stack>#include <queue>using namespace std;class Solution {public: bool searchMatrix(vector<vector<int>>& mat, int target) { if (mat.size() <= 0) return false; int i = 0; int j = mat[0].size() - 1; while (i < mat.size() && j >= 0) { if (mat[i][j] == target) return true; else if (target < mat[i][j]) j--; else i++; } return false; }};
阅读全文
0 0
- leetcode 240. Search a 2D Matrix II 矩阵搜索 + 右上角搜索
- leetcode 74. Search a 2D Matrix 右上角搜索
- LeetCode 240. Search a 2D Matrix II (矩阵内搜索)
- LeetCode 74. Search a 2D Matrix(搜索矩阵)
- 240. Search a 2D Matrix II(搜索二维矩阵)
- 第三周:240. Search a 2D Matrix II(搜索二维矩阵之二)
- 38.Search a 2D Matrix II-搜索二维矩阵 II(中等题)
- [Lintcode] Search a 2D Matrix II搜索二维矩阵 II
- LeetCode 74 Search a 2D Matrix(搜索2D矩阵)
- Search a 2D Matrix II(搜索一个二维矩阵)
- LintCode Search a 2D matrix 搜索二维矩阵
- LeetCode OJ 之 Search a 2D Matrix (二维矩阵的搜索)
- leetCode 74.Search a 2D Matrix(搜索二维矩阵) 解题思路和方法
- 【LeetCode-面试算法经典-Java实现】【074-Search a 2D Matrix(搜索二维矩阵)】
- leetcode 74. Search a 2D Matrix-矩阵搜索|二分查找
- 图解 leetCode 74.Search a 2D Matrix(搜索二维矩阵)
- Leetcode Search a 2D Matrix 搜索二维表
- #leetcode#Search a 2D Matrix II
- 【编程】编程中的“元”
- 使用iso镜像配置本地yum源
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛
- DL和教育以及数据的思考对话
- Dropwizard框架新手学习教程(详细版)
- leetcode 240. Search a 2D Matrix II 矩阵搜索 + 右上角搜索
- 深入 char * ,char ** ,char a[ ] ,char *a[] 内核
- Appium报错集合,针对Appium错误的整理
- 网站备案说明
- 下载微信公众号认证申请公函-微信公众号使用教程4
- 企业是否适合云计算,又如何进行云计算战略规划?
- "携引擎以令天下”:JavaScript从前端到全端的逆袭之路
- bootstrap popover 点击popover外其他区域自动隐藏
- Android控件RadioButton&RadioGroup&CheckBox