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

西域数码网站建设网络营销专家

西域数码网站建设,网络营销专家,wordpress微视频主题,中国甘肃网##2023/3/2 刷算法的第一天 针对力扣的704题:本题是二分查找的基本使用!在此需要注意二分查找的基本特点: 1.数列基本有序; 2.数列数据内容不可重复。 此题只需了解二分查找算法的基本概念,无坑可跳。但在力扣上刷题就…

##2023/3/2 刷算法的第一天

针对力扣的704题:本题是二分查找的基本使用!在此需要注意二分查找的基本特点:
1.数列基本有序;
2.数列数据内容不可重复。
此题只需了解二分查找算法的基本概念,无坑可跳。但在力扣上刷题就需要知道你所使用的语言的一些基本内容(显然我还不知)!

今天第一次刷题,对C++的vector只有基本的认识,现已经知晓:1.vector定义的向量名可以直接作为数组名来使用!
2.vector定义的向量求元素个数的函数是:向量名.size()。
代码见下:

class Solution {
public:int search(vector<int>& nums, int target) {// 左闭右闭int left=0,right=nums.size()-1;while(left<=right){int mid=(left+right)/2;if(nums[mid]==target)return mid;else if(nums[mid]>target)right=mid-1;elseleft=mid+1;}return -1;}
};

不过这里我看代码随想录讲的这种是左闭右闭,还有一种的是左闭右开,这种写法你的坑会比较少,下面附上左闭右开,这种坑太多了!
左闭右开:

class Solution {
public:int search(vector<int>& nums, int target) {// 左闭右开int left=0,right=nums.size();//nums.size()输出的是元素个数,对应的是元素下标+1while(left<right){int mid=(left+right)/2;if(nums[mid]==target)return mid;else if(nums[mid]<target)left=mid+1;elseright=mid;}return -1;   }
};

坑一:nums.size()这里不用减一的原因是通过此函数取得的是元素个数,正是每个元素的下标值+1。而这样做的目的也正是为了达到[left,right)的目的!因为取出的值是大于数据下标最大值的,所以右边必然是闭区间。
坑二:当nums[mid]==target的时候,取得值照常理理解的是应该为mid-1,但是这里我们想到的是mid是通过mid=(left+right)/2取得的,所以它会自动向下取整,也就是已经减去1了;
坑三:当区间不匹配的时候,调整左的left和右的right是不一样的,原因是对于区间**[left,right)**,left是在区间内部,所以上一轮已经走过一次了,所以需要+1,对于right,它是在区间之外的,还未到达(也不可能到达),所以不要-1。

这是作为一个大四的人花费了很久弄出的一个题!

http://www.mnyf.cn/news/17265.html

相关文章:

  • 欢迎访问语文建设杂志网站网络软文营销是什么意思
  • wordpress 所有页面空白页武汉seo推广
  • 公司网站模板免费下载软文推广公司
  • 怎样在织梦后台里面做网站地图肇庆seo排名
  • 外包公司做网站价格seowhy论坛
  • 天津集体建设用地出售 网站咨询公司
  • 重庆省建设厅网站seo发外链工具
  • 政府类型网站建设方案网络舆情
  • 北京市市场监督管理局抚顺seo
  • 提供手机自适应网站建设维护百度推广客服电话多少
  • 专业做网站联系方式整站优化外包服务
  • 邯郸网站设计多少钱百度网址大全网站
  • 织梦网站tag怎么做网络推销平台有哪些
  • 海报模板网站有哪些网站推广文章
  • 网站广告条动画 怎么做广告推广平台网站
  • WordPress集群主题优化营商环境的措施建议
  • 自己做网站好还是凡科国内手机怎么上google浏览器
  • 动态和静态网站的区别网址大全2345
  • 网站开发都需要哪些图抖音推广渠道有哪些
  • 企业建设电子商务网站的预期收益云南seo网络优化师
  • 南通网站建设设计优化营商环境 提升服务效能
  • 合肥网站搭建公司哪家好宝鸡网站开发公司
  • 深圳自建网站企业网站推广的方法有哪些
  • 跟业务合作做网站给多少提成中国站长站
  • 免费前端模板网站优化营商环境个人心得
  • 网站 文件注入百度公司电话热线电话
  • 一个完整的网站建设软文推广做的比较好的推广平台
  • 怎么做网站赚钱郑州厉害的seo优化顾问
  • 溧阳网站制作百度站长工具网站提交
  • 服务器做php网站吗百度关键词分析