由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - Search a 2D Matrix的两种写法,哪种更好?
相关主题
LeetCode上word search问题的几个例子不对how to check a bin tree is balanced?
palindrome partioning IIL二电面据,附面经
Elements of Programming Interviews 第16.1题答案是不是有问题?不用暴力,这道题有没有优化解
L家 Influencer 问题求讨论[合集] G家onsite面经
Leetcode Valid Number写一个function判断一个数是不是2的整数次方
interleave string 的题目做了一下scramble string
facebook电面题目facebook的面试题
large file的一道题请教一道leetcode的新题
相关话题的讨论汇总
话题: rmid话题: matrix话题: int话题: cmid话题: cmin
进入JobHunting版参与讨论
1 (共1页)
a***e
发帖数: 413
1
题目
https://oj.leetcode.com/problems/search-a-2d-matrix/
我写的如下,先搜索行,再列。后面那个简短的是看到的别人的答案,简洁很多,但要
不要考虑行数*列数overflow的情况呢?多谢!
bool searchMatrix(vector > &matrix, int target) {
int row = matrix.size();
if (row==0) return false;
int col = matrix[0].size();
if (col==0) return false;
int rmin=0, rmax=row-1, cmin=0, cmax=col-1,rmid,cmid;
while (rmin<=rmax)
{
rmid = rmin+(rmax-rmin)/2;
if (matrix[rmid][0]>target)
{
rmax=rmid-1;
}
else if (matrix[rmid][cmax] {
rmin=rmid+1;
}
else
{
while(cmin<=cmax)
{
cmid=cmin+(cmax-cmin)/2;
if (matrix[rmid][cmid]>target)
{
cmax=cmid-1;
}
else if (matrix[rmid][cmid] {
cmin=cmid+1;
}
else
return true;
}
}
}
return false;
}
class Solution {
public:
bool searchMatrix(const vector>& matrix, int target) {
if (matrix.empty()) return false;
const size_t m = matrix.size();
const size_t n = matrix.front().size();
int first = 0;
int last = m * n;
while (first < last) {
int mid = first + (last - first) / 2;
int value = matrix[mid / n][mid % n];
if (value == target)
return true;
else if (value < target)
first = mid + 1;
else
last = mid;
}
return false;
}
};
1 (共1页)
进入JobHunting版参与讨论
相关主题
请教一道leetcode的新题Leetcode Valid Number
wildcard string matching,谁有最简洁的非递归解法?interleave string 的题目
L家电面facebook电面题目
一个小题目large file的一道题
LeetCode上word search问题的几个例子不对how to check a bin tree is balanced?
palindrome partioning IIL二电面据,附面经
Elements of Programming Interviews 第16.1题答案是不是有问题?不用暴力,这道题有没有优化解
L家 Influencer 问题求讨论[合集] G家onsite面经
相关话题的讨论汇总
话题: rmid话题: matrix话题: int话题: cmid话题: cmin