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

网站建设流程及构架航空总医院医院网站建设招标网站

网站建设流程及构架,航空总医院医院网站建设招标网站,网站建设所需美工,外国人做网站162.寻找峰值 方法一:寻找最大值 题目保证了nums[i]≠nums[i1],所以数组nums中最大值两侧的元素一定严格小于最大值本身,因此最大值所在的位置就是一个可行的峰值位置 class Solution {public int findPeakElement(int[] nums) {int idx 0…

162.寻找峰值

image-20231112104629733

方法一:寻找最大值

题目保证了nums[i]≠nums[i+1],所以数组nums中最大值两侧的元素一定严格小于最大值本身,因此最大值所在的位置就是一个可行的峰值位置

class Solution {public int findPeakElement(int[] nums) {int idx = 0;for(int i=0;i<nums.length;i++){if(nums[i] > nums[idx]){idx = i;}}return idx;}
}

方法二:使二分查找优化迭代爬坡

image-20231112104931752

image-20231112104944213

class Solution {public int findPeakElement(int[] nums) {int n = nums.length;int left = 0,right = n - 1,ans = -1;while(left <= right){int mid = (left + right) / 2;if(compare(nums,mid - 1,mid) < 0 && compare(nums,mid,mid + 1) > 0){ans = mid;break;}if(compare(nums,mid,mid + 1)< 0){left = mid + 1;}else{right = mid -1;}}return ans;}// 辅助函数,输入下标 i,返回一个二元组 (0/1, nums[i])// 方便处理 nums[-1] 以及 nums[n] 的边界情况public int[] get(int[] nums,int idx){if(idx == -1 || idx == nums.length){return new int[]{0,0};}return new int[]{1,nums[idx]};}public int compare(int[] nums,int idx1,int idx2){int[] num1 = get(nums,idx1);int[] num2 = get(nums,idx2);if(num1[0] != num2[0]){return num1[0] > num2[0] ? 1:-1;} if(num1[1] == num2[1]){return 0;}return num1[1] > num2[1] ? 1:-1;}
}

方法三:二分查找

  • 在题目描述中出现了nums[-1]=nums[n]=-∞,就代表着只要数组中存在一个元素比相邻元素大,那么沿着它一定就可以找到一个峰值
  • 根据上述结论,可以使用二分查找找到峰值
  • 查找时,左指针l,右指针r,以其保持左右顺序为循环条件
  • 根据右指针计算中间位置m,并比较m和m+1的值,如果m较大,则左侧存在峰值,r=m,如果m+1较大,则右侧存在峰值,l=m+1
class Solution {public int findPeakElement(int[] nums) {int left = 0, right = nums.length - 1;for (; left < right; ) {int mid = left + (right - left) / 2;if (nums[mid] > nums[mid + 1]) {right = mid;} else {left = mid + 1;}}return left;}
}
http://www.yayakq.cn/news/631250/

相关文章:

  • 网站设计的逻辑结构易企网站建设
  • 云南网站建设优选平台论坛备案 和网站备案
  • 集团网站建设教程公司以前做的免费网站太多_新网站搜索不到
  • 用asp.net做的购物网站网站建设比较好的
  • 免费psd模板网站网站集约化建设探讨
  • 如何在建设教育协会网站注册考试网站建设开发模式h5
  • 南通优普企业网站建设黑龙江公共资源交易网官网
  • 色轮配色网站html5教程百度云
  • 网站开发实验心得在百度做网站
  • 长治哪里做网站多个wordpress 用户
  • 昆山的网站建设东莞优化网站建设
  • 松阳县建设局网站公示朝阳区建设工作办公室网站
  • 网站怎么做图片建设协会官方网站
  • 学校学生网站模板下载3d建模一般学费多少
  • 建建建设网站首页嘉上营销
  • wordpress侧边浮窗北京seo地址
  • 商标注册网站查询系统wordpress用户设置
  • 郴州录取网站长沙网站制作哪家好
  • 音乐网站禁止做浅度链接asp.net mvc 网站开发之美
  • 网站建设找汉狮php网站开发基础入门教程
  • 二手房公司如何做网站西地那非片功效与作用主要会有哪些
  • 中山网站设计与建设个人做影视网站版权问题
  • 免费开源的企业建站系统wordpress1g内存
  • 网站开发电销常遇到问题开封网站建设兼职
  • soso搜搜网站收录提交入口上海有哪些大公司
  • 做定制型网站先备案还是先做网站
  • 成都网站建设优创网站开发使用什么软件
  • 深圳住房建设局网站首页东昌府做网站
  • 网站推广适合哪种公司做天下第一社区是免费播放视频
  • 免费注册自助网站广告网络平台