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

app网页设计网站wordpress+百度云图安装

app网页设计网站,wordpress+百度云图安装,网页游戏排行榜人气,公司信息管理系统文章目录 1.山脉数组的峰顶索引2.寻找峰值3.寻找旋转排序数组中的最小值4.点名希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力#xff01; 本篇接上一篇二分查找#xff0c;主要通过部分题目熟悉二分查找的进阶使用#xff0c;重点强调二段性#xff0c;… 文章目录 1.山脉数组的峰顶索引2.寻找峰值3.寻找旋转排序数组中的最小值4.点名希望读者们多多三连支持小编会继续更新你们的鼓励就是我前进的动力 本篇接上一篇二分查找主要通过部分题目熟悉二分查找的进阶使用重点强调二段性找到两个区间不同的地方在哪多画图划分界限 1.山脉数组的峰顶索引 ✏️题目描述 ✏️示例 传送门山脉数组的峰顶索引 题解: 第一步 首先确定二段性把顶峰放到左区间还是右区间取决于你自己会根据取法不同而导致代码不同但是都能求出顶峰索引这里我们放到左区间 第二步 按照我们的划分方式要确保左边区间不会越过分界右边区间同理就要用mid和mid-1这种划分方式。如果在左区间那么mid会有等于峰顶索引即left mid如果在右区间mid及其后面的值都不可能是峰顶索引即right mid - 1 细节问题: 对于二分查找进阶模版如果在if语句的函数体里有减法操作时那么计算mid的公式就要1 代码实现: #include iostream #include vector using namespace std;class Solution { public:int peakIndexInMountainArray(vectorint arr) {int left 0, right arr.size() - 1;while (left right){int mid left (right - left 1) / 2;if (arr[mid] arr[mid - 1]){left mid;}else{right mid - 1;}}return right;} };2.寻找峰值 ✏️题目描述 ✏️示例 传送门寻找峰值 题解: 第一步 首先确定二段性可以分为在上坡或者下坡其实这道题和山脉数组的峰顶索引是一样的这里我们顶峰放在右区间里 第二步 按照我们的划分方式要确保右边区间不会越过分界左边区间同理就要用mid和mid1这种划分方式。如果在右区间那么mid会有等于峰顶索引即right mid如果在左区间mid及其前面的值都不可能是峰顶索引即left mid 1 代码实现: #include iostream #include vector using namespace std;class Solution { public:int findPeakElement(vectorint nums) {int left 0, right nums.size() - 1;while (left right){int mid left (right - left) / 2;if (nums[mid] nums[mid 1]){left mid 1;}else{right mid;}}return left;} };3.寻找旋转排序数组中的最小值 ✏️题目描述 ✏️示例 传送门寻找旋转排序数组中的最小值 题解: 第一步 根据画图似乎不太好确认二段性但我们可以发现以D点为分界点左区间的数A到B都大于D右区间的数C到D都小于D那么由此就能确定二段性不断向中寻找最小的数 第二步 如果在右区间那么mid会有等于最小值即right mid如果在左区间mid及其前面的值都不可能是最小值即left mid 1 代码实现: #include iostream #include vector using namespace std;class Solution { public:int findMin(vectorint nums) {int left 0, right nums.size() - 1;int x nums[right];while (left right){int mid left (right - left) / 2;if (nums[mid] x){left mid 1;}else{right mid;}}return nums[right];} };4.点名 ✏️题目描述 ✏️示例 传送门点名 题解: 第一步 在连续数组的前提下缺失数字的位置开始下标与实际值不同很明显二段性立马就出来了 第二步 如果在右区间那么mid会有等于缺失值的实际位置索引即right mid如果在左区间mid及其前面的值都不可能是缺失值的实际位置索引即left mid 1 代码实现: #include iostream #include vector using namespace std;class Solution { public:int takeAttendance(vectorint records) {int left 0, right records.size() - 1;while (left right){int mid left (right - left) / 2;if (records[mid] mid){left mid 1;}else{right mid;}}return records[left] left ? left 1 : left;} };希望读者们多多三连支持 小编会继续更新 你们的鼓励就是我前进的动力
http://www.dnsts.com.cn/news/72705.html

相关文章:

  • 福田网站优化互联网产品经理
  • 做十个网站怎样查看别人的网站是怎么建设
  • 建设历史文化旅游宣传网站做微商哪个网站比较好
  • 网站制作器提高百度快速排名
  • 伊川网站开发濮阳网警
  • wordpress视频网站采集器seo优化排名百度教程
  • 电子科技网站建设网站开发教材
  • 互动网站建设公司在线培训系统平台
  • 网站建设致谢湖州市建设工程造价信息网
  • 建设银行新加坡招聘网站做电影网站的服务器需要多大
  • 一个网站需要几个人做阿里云服务器建网站
  • 快速建站系统如何利用dw建设网站
  • 最新网站技术商业空间设计调研
  • 做企业网站服务商手机端网站优化排名seo推广
  • 网络组建考试题全网seo是什么意思
  • 做游戏人设计网站找网络公司建网站每年收维护费
  • 哈尔滨建设厅官方网站徐州做网站企业
  • 企业建站有哪些步骤网站加速器免费永久
  • 宁波网站建设宁波表情包做旧网站
  • 网站速度打开慢的原因近期国外重大新闻事件
  • 如何做一个网站推广自己的产品忘记密码wordpress
  • 网站备案主体域名购物网商城首页
  • 医疗网站建设免费网站ip域名查询
  • 网站开发证有没有用提交百度收录
  • 白云区做网站公司郑州最新情况
  • 做外贸是网站好还是展会好jrs直播(无插件)直播极速体育360
  • 深圳有多少家企业贵港seo关键词整站优化
  • 百姓网网站开发的意义站长之家音效
  • 花店网站模板 html诸城网站建设0536s
  • 手机网站是怎么制作的公司网站开发费用济南兴田德润o评价