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

四川网站建设设计公司排名开发公司与建筑公司合作协议

四川网站建设设计公司排名,开发公司与建筑公司合作协议,外贸网络推广是什么,中国服装设计公司前十名创作不易#xff0c;感谢三连#xff01;#xff01; 一、二分查找算法思路总结 大家先看总结#xff0c;然后再根据后面的题型去慢慢领悟 二、二分查找#xff08;easy#xff09; . - 力扣#xff08;LeetCode#xff09;二分查找 思路#xff1a;#xff08;模… 创作不易感谢三连  一、二分查找算法思路总结 大家先看总结然后再根据后面的题型去慢慢领悟 二、二分查找easy . - 力扣LeetCode二分查找 思路模版1正常的二分查找策略 class Solution { public:int search(vectorint nums, int target){int left0,rightnums.size()-1;while(leftright){int midleft(right-left)/2;if(nums[mid]target) leftmid1;else if(nums[mid]target) rightmid-1;else return mid;}return -1;} }; 三、在排序数组中查找元素的第一个位置和最后一个位置 . - 力扣LeetCode在排序数组中查找元素的第一个位置和最后一个位置 要注意示例3提到的边界情况 思路找第一个用左区间端点查找模版2找最后一个用右端点区间查找模版3 class Solution { public:vectorint searchRange(vectorint nums, int target){if(nums.size()0) return {-1,-1};//处理边界情况否则会越界int begin0;//区间左端点int left0,rightnums.size()-1;while(leftright){int midleft(right-left)/2;if(nums[mid]target) leftmid1;else rightmid;//最后会落在区间的左端点}if(nums[left]!target) return{-1,-1};//找不到else beginleft;//区间右端点rightnums.size()-1;while(leftright){int midleft(right-left1)/2;if(nums[mid]target) leftmid;//最后会落在区间的右端点else rightmid-1;}return {begin,right};//此时至少有一个左端点所以不可能找不到。} }; 四、x的平方根 . - 力扣LeetCodex的平方根 思路右端区间二分查找法 class Solution { public:int mySqrt(int x) {if(x1) return 0;//处理边界情况int left1,rightx/2;while(leftright){long long midleft(right-left1)/2;if(mid*midx) rightmid-1;else leftmid;}return left;} }; 五、搜索插入位置 . - 力扣LeetCode搜索插入位置 思路1左端区间查找  class Solution { public:int searchInsert(vectorint nums, int target) {int left0,rightnums.size()-1;while(leftright){int midleft(right-left)/2;if(nums[mid]target) leftmid1;else rightmid;}if(nums[left]target) return left1;return left;} }; 思路2右端区间查找有特殊情况比如正好是和targe相等且只有一个元素 class Solution { public:int searchInsert(vectorint nums, int target) {int left0,rightnums.size()-1;while(leftright){int midleft(right-left1)/2;if(nums[mid]target) leftmid;else rightmid-1;}//右端区间要考虑边界情况特殊情况只有一个元素且正好等于targetif(nums[left]target) return left;return left1;} }; 六、山峰数组峰顶的索引 . - 力扣LeetCode山峰数组峰顶的索引 本题特别的就是不再是升序而是去找二段性的规律 思路1左端区间查找  class Solution { public:int peakIndexInMountainArray(vectorint arr){int left1,rightarr.size()-2;while(leftright){int midleft(right-left)/2;if(arr[mid]arr[mid1]) leftmid1;else rightmid; }return left;} }; 思路2右端区间查找  class Solution { public:int peakIndexInMountainArray(vectorint arr){int left1,rightarr.size()-2;while(leftright){int midleft(right-left1)/2;if(arr[mid]arr[mid-1]) leftmid;else rightmid-1; }return left;} }; 七、寻找峰值 . - 力扣LeetCode寻找峰值 左区间端点法 class Solution { public:int findPeakElement(vectorint nums) {int left0,rightnums.size()-1;while(leftright){int midleft(right-left)/2;if(nums[mid]nums[mid1]) leftmid1;else rightmid;}return right;} }; 右区间端点法 class Solution { public:int findPeakElement(vectorint nums) {int left0,rightnums.size()-1;while(leftright){int midleft(right-left1)/2;if(nums[mid]nums[mid-1]) leftmid;else rightmid-1;}return right;} }; 八、点名 . - 力扣LeetCode点名 左区间端点法  class Solution { public:int takeAttendance(vectorint records) {int left0,rightrecords.size()-1;while(leftright){int midleft(right-left)/2;if(records[mid]mid) leftmid1;else rightmid;}if(records[right]right) return right1;else return right;} }; 注意插入元素的时候要注意是否是在最右边插入 九、 寻找旋转数组中的最小值 . - 力扣LeetCode寻找旋转数组中的最小值 思路左区间端点查找法 class Solution { public:int findMin(vectorint nums) {int left0,rightnums.size()-1;int targetnums[right];//标记一下while(leftright){int midleft(right-left)/2;if(nums[mid]target) leftmid1;else rightmid;}return nums[left];} }; 十、二分查找规律的再总结 二分查找的策略基本上都是去找一个数对应的有三种模版正常的二分查找、左区间端点查找、右区间端点查找。其中正常的二分查找局限性比较大必须得是升序且限制条件较多大多数情况下不符合题意。最常用的就是左区间端点关键是left会大跳跃且目标位置在较大值区间的左边和右区间端点法关键是right会大跳跃且目标位置在较小值区间的右边。 后面有遇到相关oj题博主会继续更新的……感谢支持
http://www.zqtcl.cn/news/166622/

相关文章:

  • 江西智能网站建设嘉定注册公司
  • 海口网站建设联系方式十大免费软文推广平台
  • 石碣镇做网站帮别人做网站开价
  • 站长 网站ip客户都不愿意做网站
  • 网站开发和软件开发哪个难网站备案账号
  • 2昌平区网站建设安徽盛绿建设网站
  • 商务网站建设目的天津建设网站需要的费用
  • flash 网站头部wordpress支持大文件上传
  • 网站开发方式的选择凡客设计
  • 常德建设网站如何查询某个网站的设计公司
  • wordpress 仿站教程学校ui设计培训
  • 南昌模板建站定制网站合肥瑶海区网站建设价格
  • 奥尔马手表官方网站导出wordpress文章
  • 网站栏目内容和功能手机网站建设 如何获得更好的排名
  • 网站运营推广难做常德网警
  • 北滘网站建设公司在百度上做网站怎么做
  • 合肥网站建设 毅耘园林设计网站大全
  • 免费备案网站空间爱营销app
  • 郑州网站建设公网站建设需要步骤
  • 源创派网站建设做软件赚钱的网站有哪些
  • 中英文网站建设公司推广引流
  • 网站改域名百度热词指数
  • 网站开发工程师工作内容网站源码是用什么做的
  • 做网站优化费用免费的视频网站如何赚钱
  • 如何制作一个好网站中国建设银行网站暑假工报名
  • 阿里巴巴做网站找谁网站建设需要ui吗
  • 如何评价伊利集团网站建设长沙专业竞价优化首选
  • 网站建设费用标准做网站怎么盈利
  • 仕德伟做的网站图片怎么修initial wordpress
  • 网站制作公司多少费用正规的机械外包加工订单网