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

手机网站接入微信登录宁波网站推广方式

手机网站接入微信登录,宁波网站推广方式,网络商务,在线设计发型免费女x 的平方根 在0~X中肯定有数的平方大于X&#xff0c;这是肯定的。我们需要从中找出一个数的平方最接近X且不大于X。0~X递增&#xff0c;它们的平方也是递增的&#xff0c;这样我们就可以用二分查找。 我们找出的数的平方是<或者恰好X&#xff0c;所以把0~X的平方分为<X …

 x 的平方根 

在0~X中肯定有数的平方大于X,这是肯定的。我们需要从中找出一个数的平方最接近X且不大于X。0~X递增,它们的平方也是递增的,这样我们就可以用二分查找。

我们找出的数的平方是<或者恰好==X,所以把0~X的平方分为<=X >X的两部分,求<=区间的最右端

class Solution {
public:int mySqrt(int x) {long long left=0,right=x;while(left<right){long long mid=left+(right-left+1)/2;if(mid*mid<=x) left=mid;else right=mid-1;}return left;}
};

long long防止超出int范围

搜索插入位置

递增数组,找到相等返回下标,反正按顺序插入(恰好比target大的值),也就是目标值>=target。把区间分为<target >=target,找右区间左端

class Solution {
public:int searchInsert(vector<int>& nums, int target) {int left=0,right=nums.size()-1;while(left<right){int mid=left+(right-left)/2;if(nums[mid]<target) left=mid+1;else right=mid;}if(nums[left]<target) left++;//left恰好是数组最后一个元素return left;}
};

山脉数组的峰顶索引

这段数组可以分成两部分,前一部分递增 后一部分递减。

这样我们就可以用二分查找,如果mid处于递增位置,那么目标值肯定在右边。反之,左边。

下面有两种做法,不同点在于把峰值看做是递增数组上还是递减数组上,在递增数组就是求右端点,在递减数组就是求左端点。

峰值属于递减数组,求左端点

class Solution {
public:int peakIndexInMountainArray(vector<int>& arr) {int left=0,right=arr.size()-1;while(left<right){int mid=left+(right-left)/2;if(arr[mid]>=arr[mid+1]) right=mid;else left=mid+1;}return left;}
};

因为mid可能正好是目标值,不能跟后面的值比较,后面是递增数组的。

峰值属于递增数组,求右端点

class Solution {
public:int peakIndexInMountainArray(vector<int>& 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 left;}
};

寻找峰值

有三中情况一直递增 / 一直递减 \ 既有递增又有递减 /\/\/\/\

但无论那种情况,如果是递增那它的右边一定有峰值,如果递减它的左边一定有峰值。

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

把峰值看作递增的部分,如果nums[mid]>nums[mid-1]说明递增,那么mid可能是峰值,所以left不能=mid+1,left=mid,让right从右边找过来。

http://www.yayakq.cn/news/793860/

相关文章:

  • 网站的排版问题永州网站网站建设
  • 成都网站改版优化wordpress加密插件
  • 中山网站建设案例wordpress 中的函数
  • 乐清站在哪建设网站终身免费
  • 自适应网站怎么做移动配置沈阳关键词优化价格
  • 福安做网站wordpress 添加钩子
  • 网站建设 类该如何与网站设计公司沟通
  • 网站建设 合作协议沈阳网站建设教案模板
  • 制作网站比较大的几家公司安陆 网站建设
  • 旅游网站建设项目中国最有名的建设网站
  • 网站的页面动态需要哪些方法做四大工业设计软件
  • 5050众筹网站开发成都住建局官网报名被挤爆黑幕
  • 手机微网站开发wordpress前台发布文章
  • 免费建设外贸网站广东深广东深圳网站建设
  • 如何优化营销型企业网站长尾关键词挖掘站长工具
  • 做网站的人属于什么行业2345网址大全浏览器
  • 广州 网站建设 020成都免费建站模板
  • 网站开发不用框架wordpress相册样式
  • 做一个app需要多少成本苏州网站搜索引擎优化
  • 如何建立一个网站来卖东西青岛工程建设管理信息网官方网站
  • 漳州微信网站建设电话专题网站开发 交互方法
  • 呼伦贝尔旅游包车网站咋做wordpress 怎么手动更新
  • wordpress顶部外贸网站建设平台优化营销推广
  • 个人网站备案申请自己建网站好还是用淘宝做好
  • 案例剖析网站wd网址怎么推广
  • 广东一站式网站建设推荐企业电话认证
  • 乡村网站建设鄞州区建设局网站
  • 网上服装商城网站代码怎么去做网站
  • 改变网站的域名空间交互式多媒体网站开发
  • 唐山做网站汉狮网络宝塔wordpress