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

重庆沙坪坝邮编推广网站排名优化seo教程

重庆沙坪坝邮编,推广网站排名优化seo教程,杭州公司排名,高邑做网站解法都在代码里,不懂就留言或者私信 想清楚的话会特别简单,你可能想不到这是个二分。。。 class Solution {/**本题题目规定我们只能用O(logN)的时间复杂度来解题,这显然就是让二分嘛而题目给的数组本身是无需,怎么二分呢其实我…

 解法都在代码里,不懂就留言或者私信

想清楚的话会特别简单,你可能想不到这是个二分。。。

class Solution {/**本题题目规定我们只能用O(logN)的时间复杂度来解题,这显然就是让二分嘛而题目给的数组本身是无需,怎么二分呢其实我们不是要寻找具体的某个数字,而是去寻找某个峰值,就像爬山一样,只要我们现在是往上走,那一直往前方走就有峰值具体到我们的题目,我们随机选取一个位置,如果这个位置比左右都大,那它就是峰值,返回即可如果左边比它大,那它往左边就是爬坡,那左边必定右峰值如果右边比它大,那它往右边就是爬坡,右边必定有峰值如果左右都比它大,就左右都有峰值,当然最后这种情况我们忽略就行,因为我们只需要找到一个峰值*/public int findPeakElement(int[] nums) {if(nums.length == 1) {return 0;}/**第一个只需要大于第二个就是峰值 */if(nums[0] > nums[1]) {return 0;}/**最后一个只需要大于倒数第二个就是峰值 */if(nums[nums.length-1] > nums[nums.length - 2]) {return nums.length - 1;}/**如果第一个和最后一个都不是峰值,我们从1~nums.length-2里找*/int left = 1;int right = nums.length - 2;while(left <= right) {/**随机取left~right中的某个位置 */int randomIndex = left + (int)((right - left) * Math.random());/**如果比左右都大,那不就是我们的答案吗,这么写不会越界吗?不会,因为我们是在第二个~倒数第二个之间尝试的*/if(nums[randomIndex] > nums[randomIndex-1] && nums[randomIndex] > nums[randomIndex + 1]) {return randomIndex;/**右边大,右边肯定有峰值 */} else if(nums[randomIndex+1] > nums[randomIndex]) {left = randomIndex + 1;} else {/**左边大,左边肯定有峰值 */right = randomIndex - 1;}}return -1;}
}

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

相关文章:

  • 找人做网站需要注意问题百度搜索关键词排行榜
  • 网站防护怎么做下载百度
  • 网站怎么做子分类简述常用的网络营销方法
  • 做充币提现的网站百度互联网营销是什么
  • 做炭化料的网站互联网金融
  • 湖南建筑信息网一体化平台北京网络排名优化
  • 做网站的开题报告网站排名查询
  • 020网站建设和维护费用武汉seo搜索优化
  • 淘宝客做网站网站友链查询源码
  • 西安高端网站建设公司seo全网营销公司
  • 专门做网站公司阿亮seo技术顾问
  • 品牌型网站制作哪可口可乐网络营销策划方案
  • 苏州设计网站公司在哪里打广告效果最好
  • 怎么在静态网站基础上加动态做网站优化推广
  • idc网站建设百度博客收录提交入口
  • 云服务器可以建设个人网站吗seo网上培训课程
  • 温江做网站公司网站推广与优化方案
  • 一个网站制作流程免费网站在线观看人数在哪
  • 网站设计的基本知识网上seo研究
  • 做电影网站如何不侵权深圳网络广告推广公司
  • 宁波网站搜索排名营销型网站建设的重要原则
  • 低价自适应网站建设优化建站小学生关键词大全
  • 做电影网站需要什么条件关键字有哪些
  • 简易做海报网站零基础怎么做电商
  • 制作公司宣传片哪家好专业培训seo的机构
  • 模板做图 网站有哪些网络整合营销方案
  • 济南网站建设鲁icp备营销型网站制作公司
  • 在网站里怎么做图片超链接有哪些搜索引擎网站
  • 如何做分享赚钱的网站市场营销的八个理论
  • 返利网站怎么做推销广告