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

网站开发合同官司网站设计素材网站

网站开发合同官司,网站设计素材网站,不是网站可以用云主机吗,广州做网站公司哪家好4. 搜索插⼊位置(easy) 题⽬描述:解法(⼆分查找算法): 题⽬链接:35. 搜索插⼊位置 题⽬描述: 给定⼀个排序数组和⼀个⽬标值,在数组中找到⽬标值,并返回其索…

4. 搜索插⼊位置(easy)

    • 题⽬描述:
    • 解法(⼆分查找算法):

题⽬链接:35. 搜索插⼊位置

题⽬描述:

给定⼀个排序数组和⼀个⽬标值,在数组中找到⽬标值,并返回其索引。如果⽬标值不存在于数组中,返回它将会被按顺序插⼊的位置。
请必须使⽤时间复杂度为 O(log n) 的算法。
⽰例 1:
输⼊: nums = [1,3,5,6], target = 5
输出: 2
⽰例 2:
输⼊: nums = [1,3,5,6], target = 2
输出: 1
⽰例 3:
输⼊: nums = [1,3,5,6], target = 7
输出: 4

解法(⼆分查找算法):

算法思路:

  1. 分析插⼊位置左右两侧区间上元素的特点:
    设插⼊位置的坐标为 index ,根据插⼊位置的特点可以知道:
    • [left, index - 1] 内的所有元素均是⼩于 target 的;
    • [index, right] 内的所有元素均是⼤于等于 target 的。
  2. 设 left 为本轮查询的左边界, right 为本轮查询的右边界。根据 mid 位置元素的信息,分析下⼀轮查询的区间:
    ▪ 当 nums[mid] >= target 时,说明 mid 落在了 [index, right] 区间上,mid 左边包括 mid 本⾝,可能是最终结果,所以我们接下来查找的区间在 [left, mid] 上。因此,更新 right 到 mid 位置,继续查找。
    ▪ 当 nums[mid] < target 时,说明 mid 落在了 [left, index - 1] 区间上,mid 右边但不包括 mid 本⾝,可能是最终结果,所以我们接下来查找的区间在 [mid + 1, right] 上。因此,更新 left 到 mid + 1 的位置,继续查找。
  3. 直到我们的查找区间的⻓度变为 1 ,也就是 left == right 的时候, left 或者right 所在的位置就是我们要找的结果。

C++ 算法代码:

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) return right + 1;return right;}
}

Java 算法代码:

class Solution
{public int searchInsert(int[] nums, int target) {int left = 0, right = nums.length - 1;while(left < right){int mid = left + (right - left) / 2;if(nums[mid] < target) left = mid + 1;else right = mid;}// 特判⼀下第三种情况if(nums[right] < target) return right + 1;return right;}
}
http://www.dtcms.com/wzjs/595032.html

相关文章:

  • 长沙市建站注册网站域名
  • [ 1500元做网站_验收满意再付款! 东莞常平天气预报
  • 界面十分好看的网站郑州seo联系搜点网络效果好
  • windows7怎么做网站服务器承德做网站设计的
  • 苏州相城做网站的聊城网站建设企业
  • html网站建设代码网站推广的方法枫子
  • 海淘手表网站wordpress生成海报分享
  • 嘉兴论坛网站建设淘宝网站可信度状况及建设策略
  • 参考网是正规网站吗黄金行情软件下载
  • 关于做好学院网站建设的要求网站与客户端的区别
  • 淘宝客导购网站 丢单无锡做网站要多少钱
  • 淘客返利网站怎么做红色系 网站
  • 西安搬家公司电话号码大全seo3
  • 做网站推广员必备的条件WordPress 分类目录 加斜杠
  • 怎样做网站seo信阳市网站建设
  • 建设网站具体的步骤长沙网页制作开发公司
  • 网站建设平台流程苏州高新区建设局网站管网
  • 企业网站ui设计莱芜金点子广告电子版2024
  • 网站检测报告哪里做制作网站能挣钱
  • 在家做网站设计打开上次浏览的网站
  • 六安网站建设招商招聘网站是做什麼的
  • 公司在网站做广告怎么做分录测字算命网站开发
  • wordpress需要账号班级优化大师官网登录
  • 网站特效模板下载制作网站的过程细节
  • 微信免费做邀请函模版网站中国建设银行招聘网站报名系统
  • 如何将网站变成免费一个公司可以做几个网站备案
  • 网站建设板块免费下载wordpress google主题
  • 网站建设属于网络还是软件济南本地网站建设公司
  • 做外贸有那些网站平台百度域名注册
  • 赤壁网站建设公司网站建设管理系统