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

马鞍山的网站建设公司哪家好企业服务器配置方案

马鞍山的网站建设公司哪家好,企业服务器配置方案,丰台网站开发,注册电商平台怎么注册给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,3,5,6], target 5 输出: 2示例 2: 输入…

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

请必须使用时间复杂度为 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 <= nums.length <= 104
  • -104 <= nums[i] <= 104
  • nums 为 无重复元素 的 升序 排列数组
  • -104 <= target <= 104

思路:如果题目没有限制时间复杂度的话,那么用for循环可以很简单的实现,由于该题目需要的时间复杂度为O(log n)所以这里使用二分查找,二分查找分别有递归和迭代两种方式,这里使用迭代来实现

二分查找的核心变量有三个:left指针、right指针和mid(middle)指针,每次将target与数组中间项(Arr[mid])作比较,target大于Arr[mid],将left指针右移至mid位置,重新计算mid指针位置target小于Arr[mid],将right指针左移至mid位置,重新计算mid指针位置

mid=Math.floor(left+(right-left)/2)

下面附上实现代码

/*** @param {number[]} nums* @param {number} target* @return {number}*/
var searchInsert = function (nums, target) {let left = 0let right = nums.length - 1while (left <= right) {let mid = Math.floor(left + (right - left) / 2);if (target == nums[mid]) {return mid}else if (target < nums[mid]) {right = mid - 1} else {left = mid + 1}}return right + 1
};

http://www.dtcms.com/a/463666.html

相关文章:

  • 专业的wap网站开发常州高端网站建设公司
  • 如何对网站的文件和资源进行优化?wordpress说说
  • 网站搭建开发html5网站链接标签
  • 做企业网站需要人维护么徐州建设工程交易平台
  • 免费网站模板在哪下载wordpress 广告 插件下载
  • 枣阳建网站wordpress的安装过程
  • 东莞网站建设 光龙安康网站建设公司电话
  • 潍坊快速建站模板门户网站是以什么为主
  • 武隆集团网站建设网摘网站推广法
  • 建筑工程分包平台苏州网站搜索引擎优化
  • 做网站需要什么电脑团购的网站扣佣金分录怎么做
  • 网站建设一般收多少定金什么推广平台好
  • 网站后台文字编辑器wordpress调样式
  • wordpress无法连接到ftp服务器房产网站关键词优化
  • 深圳网站建设一尘互联营销方案推广
  • 网站的详情页面设计做php网站的环境
  • 石油化工工程建设人才招聘网站集团网站
  • 猎头公司排名前十安卓内核级优化神器
  • 高安建站公司做网站4000-262-263
  • 网站建设用什么语言好吉林品牌网站建设商家
  • 怎么建立免费个人网站保险官网
  • 中国建造师官方网站小程序源码网
  • Shapiro-Wilk检验:原理、应用与实现
  • asp.net 网站开发教程办文明网站做文明网民活动方案
  • 济南手机建站价格深圳公司网站建设公司
  • 影视传媒公司网站模板上海著名网站设计公司
  • 构建AI智能体:五十八、智能工作流引擎:基于LangGraph的模块化内容创作系统
  • 做网站智能工具合肥seo优化
  • 桂平逗乐游戏招聘网站开发大连承揽营销型网站公司
  • 资深的家居行业网站模板wordpress打开速度太慢