[LeetCode] Find Peak Element
The idea and code is just taken from this link. There is a nice explanation to the code on the answer by BrianLuong1337.
1 class Solution { 2 public: 3 int findPeakElement(vector<int>& nums) { 4 int n = nums.size(), l = 0, r = n - 1; 5 while (l < r) { 6 int m = (l & r) + ((l ^ r) >> 1), mr = m + 1; 7 if (nums[m] > nums[mr]) r = m; 8 else l = mr; 9 } 10 return l; 11 } 12 };
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步