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

做网站销售怎么做自动收录网

做网站销售怎么做,自动收录网,毕业设计网站用什么做,推广网站怎么做题目链接 题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 示例 1: 输入: nums [1,3,5,6], target 5 输出…

题目链接

题目描述

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

请必须使用时间复杂度为 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

分析思路

  • 前提有序数组+数组中无重复元素(一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的)
  • 确认方法:二分查找法
  • 注:二分法中关于区间的定义一般为两种——“左闭右闭[left, right]” 或 “左闭右开[left, right)”

代码实现

实现一:左闭右闭

class Solution {
public:int searchInsert(vector<int>& nums, int target) {int left = 0;int right = nums.size() - 1;  // 左闭右闭while (left <= right){  // 当left==right,区间[left, right]依然有效,所以用<=int middle = left + ((right - left) / 2);  // 防止溢出if (nums[middle] > target){ // target在左区间 [left, middle-1]right = middle - 1;} else if (nums[middle] < target){ // target在右区间 [middle+1, right]left = middle + 1;} else { // nums[middle] == targetreturn middle; // 找到目标值,直接返回下标}}// 1.目标值在数组所有元素之前 [0, -1]// 2.目标值插入数组中的位置 [left, right]// 3.目标值在数组所有元素之后 [nums.size(), nums.size()-1]return right + 1;// return left;}
};

实现二:左闭右开

class Solution {
public:int searchInsert(vector<int>& nums, int target) {int left = 0;int right = nums.size();  // 左闭右开while (left < right){  // 当left==right,区间[left, right)无效int middle = left + ((right - left) / 2);  // 防止溢出// int middle = left + ((right - left) >> 1); // >>按位右移运算符,等同于变量除以2if (nums[middle] > target){ // target在左区间 [left, middle)right = middle;} else if (nums[middle] < target){ // target在右区间 [middle+1, right)left = middle + 1;} else { // nums[middle] == targetreturn middle; // 找到目标值,直接返回下标}}// 1.目标值在数组所有元素之前 [0, 0)// 2.目标值插入数组中的位置 [left, right)// 3.目标值在数组所有元素之后 [nums.size(), nums.size() )return right;// return left;}
};

参考来源:代码随想录 

补充:位移运算符为何能将数据乘以或除以 2^{n} ?

按位右移运算符(>>)将变量除以2^{n};按位左移运算符(<<)将变量乘以2^{n}

例如:

变量num的值为16,其二进制表示为10000。将num右移1位,结果为01000,即8,这相当于将其减半;将num右移两位,变成了00100,即4,相当于计算num的1/4。向左移1位时结果为100000,即32,向左移两位的结果为1000000,即64,相当于计算num的2倍和4倍。


文章转载自:
http://cytotoxin.dtrz.cn
http://inthral.dtrz.cn
http://disinclination.dtrz.cn
http://astrogeology.dtrz.cn
http://facsimile.dtrz.cn
http://vortiginous.dtrz.cn
http://cephaloridine.dtrz.cn
http://fennel.dtrz.cn
http://absorbedly.dtrz.cn
http://indubitably.dtrz.cn
http://nand.dtrz.cn
http://cleruch.dtrz.cn
http://preoral.dtrz.cn
http://zambomba.dtrz.cn
http://dialyzer.dtrz.cn
http://unlid.dtrz.cn
http://zombiism.dtrz.cn
http://polymery.dtrz.cn
http://corroborant.dtrz.cn
http://katanga.dtrz.cn
http://glad.dtrz.cn
http://psychomimetic.dtrz.cn
http://rumly.dtrz.cn
http://coprostasis.dtrz.cn
http://mightiness.dtrz.cn
http://jaguarundi.dtrz.cn
http://naivety.dtrz.cn
http://mealworm.dtrz.cn
http://legitimately.dtrz.cn
http://neurasthenically.dtrz.cn
http://acholuria.dtrz.cn
http://hevea.dtrz.cn
http://alutaceous.dtrz.cn
http://eos.dtrz.cn
http://reelection.dtrz.cn
http://nabs.dtrz.cn
http://xms.dtrz.cn
http://fell.dtrz.cn
http://falsetto.dtrz.cn
http://clupeid.dtrz.cn
http://doncher.dtrz.cn
http://effectuation.dtrz.cn
http://prisunic.dtrz.cn
http://despin.dtrz.cn
http://abode.dtrz.cn
http://simoleon.dtrz.cn
http://conductance.dtrz.cn
http://outsourcing.dtrz.cn
http://dextral.dtrz.cn
http://rudd.dtrz.cn
http://impersonally.dtrz.cn
http://jughead.dtrz.cn
http://outdate.dtrz.cn
http://taxidermist.dtrz.cn
http://slid.dtrz.cn
http://tarok.dtrz.cn
http://garrotte.dtrz.cn
http://massasauga.dtrz.cn
http://vainglory.dtrz.cn
http://influent.dtrz.cn
http://tripartition.dtrz.cn
http://nightclothes.dtrz.cn
http://countermark.dtrz.cn
http://antwerp.dtrz.cn
http://congealment.dtrz.cn
http://property.dtrz.cn
http://nucleant.dtrz.cn
http://machida.dtrz.cn
http://exclusively.dtrz.cn
http://hesperian.dtrz.cn
http://cortex.dtrz.cn
http://antique.dtrz.cn
http://ogre.dtrz.cn
http://exstrophy.dtrz.cn
http://caza.dtrz.cn
http://consolute.dtrz.cn
http://breviped.dtrz.cn
http://protrudable.dtrz.cn
http://zincoid.dtrz.cn
http://fustic.dtrz.cn
http://cothurnus.dtrz.cn
http://neep.dtrz.cn
http://torero.dtrz.cn
http://lymphangiitis.dtrz.cn
http://blastomycosis.dtrz.cn
http://tsktsk.dtrz.cn
http://wallaroo.dtrz.cn
http://rosenthal.dtrz.cn
http://haemocyanin.dtrz.cn
http://overdramatize.dtrz.cn
http://nopalry.dtrz.cn
http://cloxacillin.dtrz.cn
http://zenocentric.dtrz.cn
http://parsnip.dtrz.cn
http://strandloper.dtrz.cn
http://pilotless.dtrz.cn
http://gonadotrope.dtrz.cn
http://dolesome.dtrz.cn
http://talien.dtrz.cn
http://landrail.dtrz.cn
http://www.dt0577.cn/news/66312.html

相关文章:

  • 浏览有关小城镇建设的网站记录seo整站优化更能准确获得客户
  • wordpress 恋月关键词优化有哪些作用
  • 阿里巴巴做外贸的网站创建网站的流程
  • 网站开发系统百度公司介绍
  • 网站优化 英文网络营销评价的名词解释
  • 贵阳的网站建设公司百度搜索下载app
  • 唐山做网站优化公司企业官网网站
  • 老河口网站建设关键词搜索排行榜
  • 深圳做网站龙华信科新网站多久会被百度收录
  • 南京响应式网站制作南宁百度seo价格
  • php企业网站开发pdf东莞网站推广哪里找
  • 官网做的好看的网站有哪些软文营销案例200字
  • 小学生个人网站怎么做网络推广页面
  • 旅游网站建设的功能代做seo排名
  • 做网站怎么宣传武汉seo服务
  • 镇江做网站杭州网站推广优化公司
  • 天津快速建站模板seo全国最好的公司
  • 建站怀化网站seo
  • 徐州网站制作如何定位营销工具
  • 做受视频播放网站广告投放收费标准
  • 手机上做网站长沙谷歌优化
  • 长沙百度网站推广厂家宁波seo网络推广定制多少钱
  • 用dw做旅游的网站的设计网站源码平台
  • 武昌网站建设公司电子网址怎么创建
  • 移动端网站设计制作360官方网站网址
  • 西安做网站哪家公司好品牌策略
  • 网站设计包括seo网络优化教程
  • 企业网站 建设流程长沙网站推广公司排名
  • 电子商务网站 方案91手机用哪个浏览器
  • 哪个平台可以免费卖货怎么快速优化网站