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

聊城公司做网站新东方一对一辅导价格

聊城公司做网站,新东方一对一辅导价格,博客类网站模板,济南网约车公司难度:中等 题目描述: 给定一个长度为 n 的整数 山脉 数组 arr ,其中的值递增到一个 峰值元素 然后递减。 返回峰值元素的下标。 你必须设计并实现时间复杂度为 O(log(n)) 的解决方案。 示例 1: 输入:arr [0,1,0]…

难度:中等

题目描述:

给定一个长度为 n 的整数 山脉 数组 arr ,其中的值递增到一个 峰值元素 然后递减。
返回峰值元素的下标。

你必须设计并实现时间复杂度为 O(log(n)) 的解决方案。

示例 1:

输入:arr = [0,1,0]
输出:1

示例 2:

输入:arr = [0,2,1,0]
输出:1

示例 3:

输入:arr = [0,10,5,2]
输出:1

解题思路:

JavaScript实现:

第一种写法:

/*** @param {number[]} arr* @return {number}*/
var peakIndexInMountainArray = function (arr) {let left = 1let right = arr.length - 2while (left <= right) {let mid = left + ((right - left) >> 1)if (arr[mid] > arr[mid + 1] && arr[mid] > arr[mid - 1]) {return mid} else if (arr[mid] > arr[mid + 1] && arr[mid] < arr[mid - 1]) {right = mid - 1} else if (arr[mid] < arr[mid + 1]) {left = mid + 1}}
};

第二种写法:

var peakIndexInMountainArray = function (arr) {let left = 0let right = arr.length - 1while (left < right) {let mid = Math.floor((right + left) / 2 )if (arr[mid] < arr[mid + 1]) {left = mid + 1} else {right = mid}}return left
};

tips:可以依据题目条件,利用二分查找适当缩小查找范围

http://www.shuangfujiaoyu.com/news/34419.html

相关文章:

  • 网站开发海口北京全网营销推广
  • 山西省政府网站建设的公司百度seo怎么样优化
  • 杭州包装网站建设方案百度热搜关键词
  • 英语网站建设费用服务营销理论
  • 优化网站排名提高下列哪些店铺适合交换友情链接
  • 南京疫情最新通报seo排名规则
  • 梅州做网站百度热议
  • 山东建设住建厅网站快速排名方案
  • 哪一个做网站模版好用的抖音seo排名软件
  • 怎么做网络销售的网站企业建站公司
  • 班级做网站人的叫什么广告优化师工资一般多少
  • 网站百度权重没有数据域名seo站长工具
  • 徐州云龙区建设局网站项目营销推广方案
  • 买域名做网站网络营销五个主要手段
  • 公众号登录手机版南京seo整站优化技术
  • 十大旅游网站排名百度网址大全网址导航
  • 工业设计appseo页面优化公司
  • 如何查询网站哪个公司做的傻瓜式自助建站系统
  • wordpress做双语网站百度云搜索引擎官网
  • 好看的移动端网站seo外包公司如何优化
  • 深圳做网站联系电话沈阳专业网站seo推广
  • 电子商务平台方案优化工具箱
  • 做免费的网站教程最近的新闻大事20条
  • 做视频哪个网站收入高搜索引擎查询
  • 网站制作费优化网站平台
  • 爬虫代理ip购买欧美seo查询
  • 怎么自己做礼品网站公司seo
  • 用新华做网站名是否侵权网络营销经典失败案例
  • 手机网站怎么搜索引擎设计网站大全
  • wordpress聊天长春网站优化咨询