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

网站博客程序早8晚5双休的工作

网站博客程序,早8晚5双休的工作,刘家窑做网站,网站站长统计代码解法都在代码里,不懂就留言或者私信 想清楚的话会特别简单,你可能想不到这是个二分。。。 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.15wanjia.com/news/170336.html

相关文章:

  • s上海网站建设姜堰区住房和城乡建设局网站
  • 谁做广东11彩票网站太原代理记账公司
  • 做微信头图的网站北京系统开发网站建设
  • 建设银行网站用户名怎么查有哪些做室内设计好用的网站
  • 故事网站模版12306网站开发人员
  • 烟台网络推广引流WordPress全面优化
  • 介绍商务网站开发流程智能建站系统cms
  • 简述对网站进行评析的几个方面.中铁建设中南公司官方网站
  • 中国设计网站排名图书馆网站建设教程
  • 响应式网站对seo做平台网站怎么做
  • 杭州网络科技网站建设深圳大型互联网公司有哪些
  • 数据线 东莞网站建设给装修公司做推广的网站
  • 做国外网站有哪些区块链技术开发
  • 济南微网站建设关于做芯片类招聘的网站
  • 网站租用服务器费用深圳网站建设服务好公司
  • 衡水高端网站建设wordpress 新浪图床
  • 临沂企业做网站深圳电商公司排行榜
  • 建站宝盒站群版星空传媒有限公司网站
  • 郑州网站建设白杨网络wordpress和druid
  • 手机网站开发者模式网站做支付按流量付费吗
  • 龙岗高端网站设计专家为女朋友做的表白网站
  • 网站qq在线代码wordpress 地图热点功能
  • 厦门免费自助建站模板二十条优化措施
  • 肇庆住房城乡建设局网站重庆观音桥
  • 做游戏模型素材 网站衡阳网站网站建设
  • 网站推广位怎么设置桂林网站建设科技有限公司
  • 优化网站哪个好wordpress播放swf插件
  • 百度云网站建设教程视频12黄页网站建设
  • 怎么建设网站规划文创产品设计案例及理念
  • 现有电商平台seo优化厂家