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

博客园wordpress模板搜索引擎seo关键词优化方法

博客园wordpress模板,搜索引擎seo关键词优化方法,北京网站建设 招聘信息,百度广告投放价格哈喽~第二周刷题开始了&#xff0c;今天这道题虽然属于简单&#xff0c;而且是二分查找模板题&#xff0c;但是我太菜了我感觉有好多可以让我思考的地方。 就一起看看这道题目吧~ 解答&#xff1a; class Solution { public:int searchInsert(vector<int>& nums, i…

哈喽~第二周刷题开始了,今天这道题虽然属于简单,而且是二分查找模板题,但是我太菜了我感觉有好多可以让我思考的地方。
就一起看看这道题目吧~
在这里插入图片描述
解答:

class Solution {
public:int searchInsert(vector<int>& nums, int target) {//直接二分查找模板int n=nums.size();int left=0,right=n-1;int mid=0;while(left<=right){mid=left+(right-left)/2;if(target>nums[mid]){left=mid+1;}else{right=mid-1;}}return left;}
};

时间复杂度:O(logn)
空间复杂度:O(1)

思考:
为什么返回left就可以得到target要插入的位置呢?
left 指向的是 第一个大于或等于 target 的位置。
right 指向的是 最后一个小于 target 的位置。

我们都知道二分查找原来是返回mid,即nums[mid]=target.
在我们的代码中,这时right会赋值为mid-1。之后如果left<=right,会继续循环,但此时只有left会增加而right不变,直到while判定条件为否。

理解:right已经到头了,right不会再变了。left要逐渐逼近right

而退出while的时候,left一定为right+1,即left=mid-1+1=mid
注意这里mid我加粗了,这里mid不是每次循环在变的mid,而是之前的right的值的那个mid

也就是说,nums[left]=nums[mid]=target
和二分查找又一样了对不对??

http://www.dtcms.com/wzjs/108276.html

相关文章:

  • 移动端网站制作杭州seo运营
  • 个人做网站流程近期国内新闻热点事件
  • 车公庙网站建设如何建立网站服务器
  • 京东商城网站怎么做营业推广方式
  • 云南企业网站建设地推一手项目平台
  • 进一步网站建设app投放渠道有哪些
  • 重庆做网站哪个好些嘛批量优化网站软件
  • win7下asp.net网站发布参考消息今天新闻
  • 广告联盟做网站无锡网站建设优化公司
  • 网站开发能进无形资产吗南京seo关键词排名
  • 网站服务器多少钱一年香港头条新闻
  • 聊城做网站的公司信息网站怎么开发
  • 巫溪集团网站建设兰州百度推广的公司
  • 沧州wap网站制作十大最靠谱教育培训机构
  • 福州网站设计哪家比较好关键词优化是怎么弄的
  • 济宁网站建设 中企动力临沂南通seo网站优化软件
  • 网页游戏 手机铁力seo
  • 深圳方维网站设计公司全国最新实时大数据
  • git怎么做隐私政策网站南宁网站seo排名优化
  • 安全狗iis 网站css无法访问石家庄seo
  • 最容易做流量的网站微信指数是什么意思
  • wordpress4.5注册插件网站关键词优化排名技巧
  • 商丘做网站建设app开发流程
  • 常德德山经开区建设局网站百度小说
  • 飞沐网站建设怎么做互联网推广
  • 浙江外贸网站建设百度seo搜索
  • 郑州网站建设知名公司排名交换链接营销案例
  • 政府网站建设 调研报告上海seo优化外包公司
  • 怎样在手机上做动漫视频网站站长工具查询网
  • 常德网站优化举例说明seo