当前位置: 首页 > news >正文

建设银行网站怎么看不见余额刷粉网站推广快点

建设银行网站怎么看不见余额,刷粉网站推广快点,网页微信版客户端下载,信息化推进与网站建设峰值元素是指其值严格大于左右相邻值的元素。 给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。 你可以假设 nums[-1] nums[n] -∞ 。 你必须实现时间复杂度为 O(…

峰值元素是指其值严格大于左右相邻值的元素。

给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。

你可以假设 nums[-1] = nums[n] = -∞ 。

你必须实现时间复杂度为 O(log n) 的算法来解决此问题。

思路一:二分

c++解法

class Solution {
public:int findPeakElement(vector<int>& nums) {int left = 0, right = nums.size() - 2;while(left <= right){int mid = left + (right - left) / 2;if (nums[mid] < nums[mid + 1]){left = mid + 1;}else{right = mid - 1;}} return left;}};

java解法

class Solution {public int findPeakElement(int[] nums) {int n = nums.length;int l = 0, r = n - 1;while (l < r) {int mid = l + r >> 1;if (nums[mid] > nums[mid + 1]) r = mid;else l = mid + 1;}return r;}
}

分析:

本题要求数组中的峰值元素,同时要求时间复杂度为O(logn),可以想到用二分解法找到峰值。二分查找找到峰值的原理为若存在峰值元素,则该峰值必定大于左右两个数,二分查找找到的值只有可能为峰值元素故可使用二分查找完成

总结:

本题考察二分查找的应用,假设从开头到中间值到结尾均为递增,若中间值大于中间值后一位数则只考虑前半段,不断缩小范围可找到峰值,返回峰值下标即可解决

http://www.15wanjia.com/news/27256.html

相关文章:

  • 国内大的网站建设公司排名电商产品推广方案
  • 大学招生网站建设网页搜索快捷键是什么
  • 政府网站建设岗位设置莆田百度快照优化
  • 做网站网页排版错误推广电话
  • mac下如何建立wordpress百度快照怎么优化排名
  • 官方网站建设的意义网推公司
  • 太原手机网站制作百度推广是怎么做的
  • 北京微信网站制作电话查询网站信息
  • 打开网站说建设中是什么问题?让手机变流畅的软件下载
  • 上海建设厅网站最近爆发什么病毒感染
  • 祝明电子商务网站建设实验报告网站建立具体步骤是
  • 网站推广成功案例线下推广团队
  • 如何使用mysql数据库做网站微网站
  • 用多说的网站百度识图在线入口
  • 疫情最新消息数据宁波seo网络推广公司排名
  • 门户网站有哪些西安百度公司开户
  • wordpress闭站网站seo分析
  • 手机网站制作公司报价单夜狼seo
  • 长治企业网站建设沈阳网站seo排名公司
  • 衣联网和一起做网站。哪家强网络推广服务外包
  • rss wordpress.orgseo中文意思是
  • 中山网站建设招聘企业网络推广的方法
  • 网络公司好听的名字seo包年优化
  • 模板网站建设开发引擎优化搜索
  • 美国生物等效性如果做的网站陕西网站设计
  • 网站域名到期会怎么样整站seo优化
  • 百度做的网站社群推广平台
  • 中医药文化建设网站百度账号怎么改用户名
  • 网站建设维护公司免费推广广告链接
  • seo网站推广案例营销企业