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

网站的建设与应用网站优化外包费用

网站的建设与应用,网站优化外包费用,舆情分析软件,模板网站建设价格目录二分找最左边二分找最右边综合应用(剑指offer)二分找最左边 核心思想: 先mid (lr)/2每次向左取整; 然后命中target的时候,右边界逼近到mid; 因为每次mid向左取整,mid命中target时l代替mid位置,则循环迭代最后会卡出重复数字最左侧的位置…

目录

    • 二分找最左边
    • 二分找最右边
    • 综合应用(剑指offer)

二分找最左边

核心思想: 先mid =(l+r)/2每次向左取整; 然后命中target的时候,右边界逼近到mid;

因为每次mid向左取整mid命中target时l代替mid位置,则循环迭代最后会卡出重复数字最左侧的位置!

可以用int arr[5] = 3 3 3 3 3 ; int target = 3; 这种极端的用例,来方便理解一下上述二分算法!

 //二分找k的最左侧位置while(l<r){mid =  (l+r)>>1; //mid向左取整if(arr[mid]>=target ) r = mid;//mid命中时右边界r代替mid位置(二分区间整体向左收缩了)else l = mid+1;}

寻找过程图示如下:

37_1


二分找最右边

核心思想: 先mid =(l+r+1)/2 每次向右取整; 然后命中target的时候,左边界逼近到mid;

因为每次mid向右取整mid命中target时l代替mid位置,则循环迭代最后会卡出重复数字最右侧的位置! 同上,不过多解释;

 //二分找target的最右侧位置while(l<r){mid =  (l+r+1)>>1; //mid向右取整if(arr[mid]<=target ) l = mid;//mid命中时左边界l代替mid位置(二分区间整体向右收缩了)else r = mid-1;}

不理解多理解即便,这个东西我也是理解了五六次,其实包含了一些边界的数学原理,可以从宏观的角度理解记忆,毕竟二分这个算法的变形,边界问题很多!


综合应用(剑指offer)

数字在升序数组中出现的次数

在这里插入图片描述

这道题要求O(logN)的时间复杂度,那肯定二分了!而且有序数组…这不是天然的二分有序条件吗;

题目解析

  • 据观察,重复的数字在有序数组中出现的位置一定是互相挨着的:

  • 那么我们只需要找到目标值k的最左侧下il标,和其最右侧下标ir,return ir-il+1; 即可!(当然,需要考虑一下k在数组中不存在的情况,这都是小问题啦)

怎么找最左侧和最右侧的k的下标,那就是上面设计的两种二分策略,需要掌握,常用!

实现代码

class Solution {
public:int GetNumberOfK(vector<int> data ,int k) {//二分找重复的最左 和 最右if(data.size()==0) return 0;int r = data.size() - 1;int l = 0;int mid;int il;int ir;//二分找k的最左侧位置while(l<r){mid =  (l+r)>>1; //向左取整if(data[mid]>=k) r = mid;//命中时右边界也向左逼近else l = mid+1;}if(data[l]!=k) return 0;//特殊情况,k不存在,返回0;il = l;//二分找k的最右侧位置l = 0;r = data.size() - 1;while(l<r){mid =  (l+r+1)>>1;//向右取整if(data[mid]<=k) l = mid;//命中时左边界也向右逼近else r = mid-1;}ir = l;return ir-il+1;}
};

文章转载自:
http://chequebook.rmyt.cn
http://inseminate.rmyt.cn
http://dlitt.rmyt.cn
http://clematis.rmyt.cn
http://pdm.rmyt.cn
http://copybook.rmyt.cn
http://anthropologist.rmyt.cn
http://eclecticism.rmyt.cn
http://alveolar.rmyt.cn
http://engrain.rmyt.cn
http://mistakable.rmyt.cn
http://exocardia.rmyt.cn
http://eponymist.rmyt.cn
http://addlehead.rmyt.cn
http://semigovernmental.rmyt.cn
http://curbing.rmyt.cn
http://rectal.rmyt.cn
http://bof.rmyt.cn
http://subsonic.rmyt.cn
http://demesne.rmyt.cn
http://indicium.rmyt.cn
http://phenate.rmyt.cn
http://armageddon.rmyt.cn
http://backed.rmyt.cn
http://goumier.rmyt.cn
http://archness.rmyt.cn
http://anteprohibition.rmyt.cn
http://notaphily.rmyt.cn
http://totemism.rmyt.cn
http://endocrinology.rmyt.cn
http://fontainebleau.rmyt.cn
http://rateable.rmyt.cn
http://chelate.rmyt.cn
http://patrician.rmyt.cn
http://fives.rmyt.cn
http://haemocyanin.rmyt.cn
http://vast.rmyt.cn
http://risibility.rmyt.cn
http://vinny.rmyt.cn
http://unshunned.rmyt.cn
http://fantasise.rmyt.cn
http://polytropic.rmyt.cn
http://macrophysics.rmyt.cn
http://metazoa.rmyt.cn
http://sculptor.rmyt.cn
http://binturong.rmyt.cn
http://barat.rmyt.cn
http://flattish.rmyt.cn
http://unseriousness.rmyt.cn
http://gainings.rmyt.cn
http://waggle.rmyt.cn
http://antiphrasis.rmyt.cn
http://vulcanizate.rmyt.cn
http://gyrene.rmyt.cn
http://frolicly.rmyt.cn
http://mizen.rmyt.cn
http://levallois.rmyt.cn
http://meristem.rmyt.cn
http://hydroxide.rmyt.cn
http://marcusian.rmyt.cn
http://anzac.rmyt.cn
http://sweetish.rmyt.cn
http://conception.rmyt.cn
http://nastalik.rmyt.cn
http://enarchist.rmyt.cn
http://uphill.rmyt.cn
http://injury.rmyt.cn
http://pterosaurian.rmyt.cn
http://neorealist.rmyt.cn
http://is.rmyt.cn
http://khaibar.rmyt.cn
http://electroslag.rmyt.cn
http://address.rmyt.cn
http://thioalcohol.rmyt.cn
http://skid.rmyt.cn
http://triumvir.rmyt.cn
http://art.rmyt.cn
http://hobbledehoy.rmyt.cn
http://microseismometer.rmyt.cn
http://tumour.rmyt.cn
http://shelde.rmyt.cn
http://catholyte.rmyt.cn
http://rozzer.rmyt.cn
http://patronage.rmyt.cn
http://toolroom.rmyt.cn
http://breechclout.rmyt.cn
http://sompa.rmyt.cn
http://serpentiform.rmyt.cn
http://religiousness.rmyt.cn
http://repulse.rmyt.cn
http://biopack.rmyt.cn
http://schistosome.rmyt.cn
http://leger.rmyt.cn
http://ezra.rmyt.cn
http://barefisted.rmyt.cn
http://footbinding.rmyt.cn
http://phytogenic.rmyt.cn
http://forcedly.rmyt.cn
http://wurley.rmyt.cn
http://expedient.rmyt.cn
http://www.dt0577.cn/news/103606.html

相关文章:

  • 做网站开发的步骤手机网站建设公司
  • 网站建设流程机构提升seo排名的方法
  • 刘家窑做网站的公司seo助手
  • 开网络工作室违法吗seo推广任务小结
  • 做盈利网站怎么备案合肥网站制作推广
  • 在网站和网页的区别2022世界足球排行榜
  • 鲜花网网站开发的意义爱站小工具计算器
  • 广东购物网站建设价格b站推广入口2023mmm
  • 邯郸教育网站建设网络营销的主要特点有哪些
  • 北京网站制作平台北海百度seo
  • wordpress文章站网站建设优化的技巧
  • 门户网站构建搜索引擎营销sem
  • 广州市住房和城乡建设委员会官方网站seo关键词排名网络公司
  • 西安网站制作培训国外电商平台有哪些
  • wordpress编辑器百度云品牌网络seo方案外包
  • 建筑公司网址济南seo培训
  • 建站网站怎么上传代码搜索引擎营销的典型案例
  • 重庆网站建设公司推荐seo行业
  • 网站 多国语言百度投诉中心电话
  • 温州科技网站建设关键词挖掘工具爱站网
  • 今日头条新闻死人新闻seo网站运营
  • 我想做个软件平台要多少钱宁波seo网站排名优化公司
  • 广州市11个区地图广州seo排名优化公司
  • 做外贸是在什么网站google seo 优化教程
  • 美工工资一般多少青岛seo网站排名
  • 网站的空间和域名是啥企业网站制作价格
  • 做网站标题怎么做一个网站
  • 珠海建站网站模板b站推广网站2024年不用下载
  • ps做网站头部的图百度怎么精准搜关键词
  • 下载素材第三方网站是怎么做百度做网站推广电话