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

西安做企业网站哪家做的好百度怎么优化网站排名

西安做企业网站哪家做的好,百度怎么优化网站排名,武汉皇朝网站建设公司,标书制作教学我们知道使用二分查找能找到值所在的位置。假如我们在找到值后仍然不断的更新指针会发生什么?我们可以利用这一点来找到最左边的以及最右边的值。 如果当nums[mid]target时,使得 rightmid-1,那么最终会使得target在right的右边。 如果当nums[…

478bb6441e444b51bac604fcc3e9bc89.png

        我们知道使用二分查找能找到值所在的位置。假如我们在找到值后仍然不断的更新指针会发生什么?我们可以利用这一点来找到最左边的以及最右边的值。

如果当nums[mid]==target时,使得 right=mid-1,那么最终会使得target在right的右边。

如果当nums[mid]==target时,使得 left=mid+1,那么最终会使得target在left的左边。

        原因是因为我们会不断更新left和right,即使是找到了值仍然更新。当我们找到一个目标值使得 right=mid-1,实际上我们是将target值认为比target值大的,然后又要寻找target值。最后left不断逼近target,right不断往左去掉target。

class Solution {
public:vector<int> searchRange(vector<int>& nums, int target) {if(nums.empty()) return {-1,-1};//除了forward_list外,所有容器都有的三个大小操作:size(),empty(),max_size()。返回值 是 列表初始化的int left=0,right=nums.size()-1;while(left<=right){//寻找最左边的元素int mid=(left+right)>>1;if(nums[mid]>=target) right=mid-1;else left=mid+1;}if(left==nums.size()||nums[left]!=target) return vector<int>{-1,-1};//列表初始化的匿名对象int ans=left;left=0,right=nums.size()-1;while(left<=right){//寻找最右边的元素int mid=(left+right)>>1;if(nums[mid]>target) right=mid-1;else left=mid+1;}return {ans,left-1};//列表初始化的匿名对象,涉及到一个类类型的 隐式类型转换}
};

 涉及到的STL问题已经标注。

 

http://www.ds6.com.cn/news/14944.html

相关文章:

  • 北大青鸟网站建设课程个人博客搭建
  • 云服务器ecs做网站google下载安卓版下载
  • 上海大型网站建设公司排名优化百度涨
  • 网站业务需求文档网站推广论坛
  • 官方网站开发制作百度手机app下载安装
  • 网站建设基础及流程百度竞价排名危机事件
  • 余姚网站建设公司广告关键词有哪些
  • 淘宝做链接有哪些网站可以做运用搜索引擎营销的案例
  • 网站做任务 炸金花郑州百度推广代运营
  • 招聘网站建设费用多少钱百度电话号码查询
  • 上海做网站汉狮网络关键词优化公司排名
  • 网站建好了还需要什么维护网站优化关键词价格
  • 在线商城平台麒麟seo软件
  • 一起做网站17广州app推广引流
  • 武汉网站建设的公司肇庆网站推广排名
  • 闸北做网站最新足球新闻头条
  • 360平台怎么做网站优化长沙优化网站
  • 北京网站开发制作公司北京优化seo公司
  • .net asp可以外链其它网站吗关键词排名查询网站
  • 小程序开发平台好牌子推荐深圳百度seo怎么做
  • 怎样做约票的网站意思google官方下载app
  • 广州市研发网站建设价格百度付费推广的费用
  • 淘宝请人做网站靠谱吗自媒体平台排名
  • 成都网站建设公司招聘百度收录量查询
  • 深圳企业网站建设成都网络推广中联无限
  • 做特卖的网站seo营销培训
  • 橙子建站输入了验证码有危险吗seo站长工具是什么
  • 哪个新闻网站做的好关键词优化排名平台
  • 动漫网站怎么做鹤壁网站推广公司
  • 厦门做网站软件win10优化大师好用吗