LeetCode OJ Find Peak Element
来源:互联网 发布:紧急避孕药 知乎 编辑:程序博客网 时间:2024/05/04 23:36
二分。
class Solution {
public:
int findPeakElement(const vector<int> &num) {
if (num.size() <= 1) return 0;
int l = 0, r = num.size() - 1, mid, s = num.size() - 1;
while (l <= r) {
mid = (l + r) / 2;
if ((mid == 0 && num[mid] > num[mid + 1]) || (mid == s && num[mid - 1] < num[mid]) || (num[mid - 1] < num[mid] && num[mid] > num[mid + 1])) return mid;
else if ((mid == 0 && num[mid] < num[mid + 1]) || (num[mid - 1] < num[mid] && num[mid] < num[mid + 1])) l = mid + 1;
else if ((mid == s && num[mid - 1] > num[mid]) || (num[mid - 1] > num[mid] && num[mid] > num[mid + 1])) r = mid - 1;
else r = mid - 1;
}
}
};
- LeetCode OJ Find Peak Element
- <LeetCode OJ> 162. Find Peak Element
- [LeetCode] Find Peak Element
- Leetcode:Find Peak Element
- LeetCode Find Peak Element
- leetcode: Find Peak Element
- leetcode:Find Peak Element
- LeetCode Find Peak Element
- Find Peak Element --leetcode
- Leetcode Find Peak Element
- [LeetCode] Find Peak Element
- Leetcode Find Peak Element
- Leetcode: Find Peak Element
- 【leetcode】Find Peak Element
- leetcode:Find Peak Element
- 【Leetcode】Find Peak Element
- LeetCode:Find Peak Element
- LeetCode:Find Peak Element
- 南邮NOJ鸡兔同笼问题
- LeetCode OJ Intersection of Two Linked Lists
- 最近用这个 博客 www.luox.wang
- ViewPager的使用(中)
- Android并发编程线程间通信的三种基本方式
- LeetCode OJ Find Peak Element
- FZU2168:防守阵地 I
- 递归系列2(字符串翻转,12345翻转)
- POJ 2249-Binomial Showdown(排列组合计数)
- 027页练习题3 4 5 6
- LeetCode OJ Maximum Gap
- LeetCode OJ Compare Version Numbers
- 编译原理之词法分析
- 第2周项目2-长方柱类