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

石碣做网站深圳网站(建设信科网络)

石碣做网站,深圳网站(建设信科网络),网站建设 推广就选网沃科技,美工培训班线上34. 在排序数组中查找元素的第一个和最后一个位置 - 力扣(LeetCode) 转化 通过题目时间复杂度为O(logN),我们就可以联想到二分算法,但是我们前面学到的算法,是查找出,有序数组里的值,并不是求其中的范围&a…

34. 在排序数组中查找元素的第一个和最后一个位置 - 力扣(LeetCode)

 转化 

 通过题目时间复杂度为O(logN),我们就可以联想到二分算法,但是我们前面学到的算法,是查找出,有序数组里的值,并不是求其中的范围,于是我们可以将找到这个值出现的范围转化为 

通过二分法找到最左边下标以及最右边下标

思路:

1.找到最左边下标

第一步:根据mid的与target的大小进行left和right的移动,如图,当t<=mid,说明最小下标点一定在左边,所以移动right ,  将right赋值给mid,重新进入循环,这样即可得到最左边的下标

2.细节处理

1.当right == left的同时,左端点就是这个点,所以循环条件为left < right

2.在mid范围内mid最大值比最小下标小1,所以left = mid+1;

3.当left和right中间无元素时,取中点方式的不同可能会造成死循环,分析图如下

4.得到值最左边下标

具体思路图如下

2.找到最右边下标

 实现思路

细节处理

由于right 在 t < mid内,所以在t < mid内,想要left 与right 相交,就得right = mid -1; 

取中间点的方法和上面找到最左边下标思路相同

注意 

考虑没有target值和数组为空的情况

代码实现

class Solution {public int[] searchRange(int[] nums, int target) {int[] array = {-1,-1};if(nums.length == 0) return array;//找到左边界点int left = 0,right = nums.length-1;while(left<right){int mid = left +(right-left)/2;if(nums[mid] < target){left = mid+1;}else{right = mid;}}if(nums[left] != target) return array;else{array[0] = left;}//找到右边界点 left = 0;right = nums.length-1;while(left<right){int mid = left +(right-left+1)/2;if(nums[mid] > target){right = mid-1;}else{left = mid;}}if(nums[left] != target) return array;else{array[1] = right;} return array;}}

http://www.sczhlp.com/news/95647/

相关文章:

  • 外行做网站子网站怎么建设
  • idc网站备案wordpress php5.3版本
  • 手机做网站的软件成都网站建设重庆最加科技
  • cad图做网站链接盐城市建设局网站打不开
  • 网站图片分辨率室内设计3d模型素材网站
  • 淮南做网站郑州电力高等专科学校怎么样
  • 帮建网站的人湖南株洲网站建设
  • 泰安网站开发推广wordpress flask
  • 网站开发实训结果分析及其心得体会重庆是哪个省哪个市的
  • 网站建设做网站多少钱网站开发流程图解释含义
  • 广告推广代运营公司北京seo管理
  • 在线简历制作网站免费菏泽城乡建设局官网
  • 翡翠原石网站首页怎么做wordpress编辑增强
  • 网站建设论坛fantodo网站建设与网页设计期末考试
  • js网站一键变灰青少年活动中心网站建设依据
  • 宜兴做网站多少钱风景网页制作模板
  • 做网站的用处企业网站建设应遵守的原则
  • 网站开发遇到的难题网站首屏
  • 移动端网站制作案例黄江镇网站仿做
  • 做网站负责人有法律风险吗东莞附近公司做网站建设多少钱
  • 网站小样用什么做黄骅港中远海运物流有限公司
  • 网站建设财务策划书建设银行官网首页网站购纪念币
  • php企业网站开发方案网站建设要知道的
  • 网站栏目策划 有思想的新闻wordpress群
  • P3983 赛斯石(赛后加强版)踢姐
  • 无锡 网站 seo 优化网店运营推广具体内容
  • 网站开发大赛沧州有没有做网站的
  • 网络公司网站源码下载百度站长提交工具
  • 4s店网站模板江东seo做关键词优化
  • 深圳做网站新科企业解决方案公司有哪些