leetcode之Search for a Range
来源:互联网 发布:python 3.4.3.msi 编辑:程序博客网 时间:2024/04/29 20:06
class Solution {
public:
int bsearch(int A[], int beg, int end, int target) {
if (beg>end) {
return -1;
}
int mid = (beg+end)/2;
if (A[mid]==target) {
return mid;
} else if (A[mid]<target) {
return bsearch(A, mid+1, end, target);
} else {
return bsearch(A, beg, mid-1, target);
}
}
vector<int> searchRange(int A[], int n, int target) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
vector<int> res;
int index = bsearch(A, 0, n-1, target);
if (index==-1) {
res.push_back(-1);
res.push_back(-1);
return res;
} else {
int i = index-1;
/*if (index==0) {
res.push_back(index);
}*/
while (i>=0&&A[i]==target) {
i--;
}
res.push_back(i+1);
i=index+1;
while (i<n&&A[i]==target) {
i++;
}
res.push_back(i-1);
}
return res;
}
};
public:
int bsearch(int A[], int beg, int end, int target) {
if (beg>end) {
return -1;
}
int mid = (beg+end)/2;
if (A[mid]==target) {
return mid;
} else if (A[mid]<target) {
return bsearch(A, mid+1, end, target);
} else {
return bsearch(A, beg, mid-1, target);
}
}
vector<int> searchRange(int A[], int n, int target) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
vector<int> res;
int index = bsearch(A, 0, n-1, target);
if (index==-1) {
res.push_back(-1);
res.push_back(-1);
return res;
} else {
int i = index-1;
/*if (index==0) {
res.push_back(index);
}*/
while (i>=0&&A[i]==target) {
i--;
}
res.push_back(i+1);
i=index+1;
while (i<n&&A[i]==target) {
i++;
}
res.push_back(i-1);
}
return res;
}
};
- leetcode之Search for a Range
- LeetCode 之 Search for a Range
- LeetCode之Search for a Range
- leetcode之Search for a Range
- LeetCode之Search for a Range
- leetcode之Search for a Range
- 【Leetcode】之Search for a Range
- leetcode之search for a range
- LeetCode 之 Search for a Range
- Leetcode之Search for a Range
- Leetcode之Search for a Range 问题
- LeetCode: Search for a Range
- LeetCode Search for a Range
- [Leetcode] Search for a Range
- LeetCode : Search for a Range
- [LeetCode] Search for a Range
- [Leetcode] Search for a Range
- Leetcode Search for a Range
- SOJ 1090 highways prim算法
- 保障IT生涯顺利晋升下一级别的14种方式
- 韦东山视频实验之触摸屏
- SecureCRT右键粘贴的设置
- 理解TCP/IP网络通信原理
- leetcode之Search for a Range
- [全程建模]UML设计类中的实现与方法数量问题
- C# day3
- IOS内存警告II
- 汉诺塔 (3) nyist93
- 小悦2013(V1.3.2)功能小节
- JAVA面试题集锦
- Windows Server 2012正式版RDS系列⑻
- C/C++的一学习总结