Leetcode Find Peak Element 162
来源:互联网 发布:oute66手机导航软件 编辑:程序博客网 时间:2024/05/16 16:17
A peak element is an element that is greater than its neighbors.
Given an input array where num[i] ≠ num[i+1], find a peak element and return its index.
The array may contain multiple peaks, in that case return the index to any one of the peaks is fine.
You may imagine that num[-1] = num[n] = -∞.
For example, in array [1, 2, 3, 1], 3 is a peak element and your function should return the index number 2.
题目链接
解法一:
class Solution {public: int findPeakElement(vector<int>& nums) { int len = nums.size(); if (len == 1) return 0; else if(len == 2) return nums[0]>nums[1] ? 0 : 1; else{ int ans = 0; if (nums[0] > nums[1]) return 0; for(int i = 1; i <= len - 2; i++){ if (nums[i] > nums[i-1] && nums[i] > nums[i+1]){ ans = i; break; } } if(nums[len - 1] > nums[len - 2]) return len - 1; return ans; } }};
hint提示二分查找:
class Solution {public: int findPeakElement(vector<int>& nums) { int len = nums.size(); unsigned left = 0, right = len - 1 , mid; while(left <= right){ if(left == right) break; mid = (left + right)/2; if (nums[mid] < nums[mid + 1]) { left = mid + 1; }else { right = mid; } } return left; }};
0 0
- LeetCode(162) Find Peak Element
- [leetcode 162] Find Peak Element
- leetcode-162 Find Peak Element
- [LeetCode 162]Find Peak Element
- LeetCode 162 Find Peak Element
- [leetcode] #162 Find Peak Element
- Find Peak Element - LeetCode 162
- Leetcode[162]-Find Peak Element
- leetcode-162-Find Peak Element
- !leetcode[162]:Find Peak Element
- LeetCode(162) Find Peak Element
- [Leetcode 162] Find Peak Element
- leetcode 162: Find Peak Element
- Leetcode #162 Find Peak Element
- 【leetcode】【162】Find Peak Element
- LeetCode 162 Find Peak Element
- Leetcode 162: Find Peak Element
- LeetCode-162:Find Peak Element
- Hibernate介绍和入门案例
- POJ 3278 Catch That Cow(入门题目)
- Redis 数据库之有序集合(zset)
- 15:文件操作(C标准库函数)fopen/fclose/fread/fwrite/fseek/fprintf/fscanf
- BZOJ 2865 字符串识别
- Leetcode Find Peak Element 162
- 在sublime侧边栏点击某文件时如何在新标签页打开,而不顶替原来打开的文件
- 文件读写
- Servlet第一篇【介绍Servlet、HTTP协议、WEB目录结构、编写入门Servlet程序、Servlet生命周期】
- 深度学习caffe实战笔记(14)MATLAB实现可视化cifar10数据集
- tips:Java中的switch的选择因子
- 平面设计大神养成记之PS篇——选择菜单栏
- POJ 3984 迷宫问题
- 做硬件的感想