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

关于做数学 平方差公式的网站做棋牌推广网站违法不

关于做数学 平方差公式的网站,做棋牌推广网站违法不,网站建设内部链接,设计网名姓氏目录 题目: 题目描述: 题目链接: 思路: 核心思路: 思路详解: 代码: Java代码: 题目: 题目描述: 题目链接: 35. 搜索插入位置 - 力扣&…

目录

题目:

题目描述:

题目链接:

思路:

核心思路:

思路详解:

代码:

Java代码:


题目:

题目描述:

题目链接:

35. 搜索插入位置 - 力扣(LeetCode)

思路:

核心思路:

二分查找

思路详解:

如果暴力的话需要 O(n) 的时间复杂度,如果二分查找的话则可以降低到 O(logn) 的时间复杂度

由题给定一个排序数组,要求必须使用时间复杂度为O(logn)的算法,相当于提示要使用二分查找

初始设置left指向0索引,right指向nums.length-1索引,再计算中间下标mid。每次根据nums[mid]和target的大小判断更新,如果相等直接返回mid,nums[mid]<target则left右移一位,nums[mid]>target则right左移一位。查找结束如果没有相等值则返回 left,该值为插入位置

为什么如果没有相等值则返回left?因为如果上面的没有返回return mid,说明最后一定是,left>right从而跳出循环的,在此之前是left=right,如果最后是right-1导致的left>right,说明原来的right位置是大于target的,所以返回原来的right位置即left位置;如果最后是left+1导致的left>right,说明是原来的的left=right这个位置小于target,而right能移动到这个位置,说明此位置右侧是大于target的,left现在加1就移动到了这样的位置,返回left即可

代码:

Java代码:

class Solution {public int searchInsert(int[] nums, int target) {int left=0;int right=nums.length-1;while(left<=right){int mid=(left+right)/2;if(nums[mid]>target){right=mid-1;}else if(nums[mid]<target){left=mid+1;}else{return mid;}}return left;}
}

http://www.dtcms.com/wzjs/593509.html

相关文章:

  • 网站后台无法上传附件wordpress设置只显标题
  • 焦作网站制作-焦作网站建设-焦作网络公司-维科网络导购网站模板
  • 中国移动深圳有限公司门户网站虚拟主机与网站建设
  • 服装购物网站排名宁波网站制作企业
  • 西宁做网站的公司高端品牌logo
  • 优质院校 建设网站计算机前端培训
  • 做一小说网站要花多钱2022网络热词30个
  • 如何免费建站wordpress 去空格
  • 免费建站cms本地wordpress很慢
  • 乌托邦网站建设建html5响应式网站的工具
  • 网站建设公司费用app商城系统开发
  • 重庆建设定额网站陕西汉中网站建设
  • 网站设计的公司蒙特安全标准化建设网站
  • pos机网站模板建站网页建设
  • 菲律宾菠菜网站开发东莞专业网站建设价格
  • 简单的网站开发的软件有哪些衡阳微信网站
  • 网站建设流程教程那个网站做3d
  • 招聘网站企业招聘怎么做兼职做网站的费用
  • 小程序自己免费制作常州谷歌优化
  • 建设行业个人云网站个人的视频网站如何做
  • 网上商城网站建设报价东莞seo网站建设
  • 长春网站制作教程宝安-网站建设信科网络
  • 网站开发包括官方传奇手游下载
  • 网站优化建设郑州每个城市建设规划在哪个网站
  • 怎么建网站模版深圳网站制作运营
  • 西安建站价格表怎样建设网站
  • 成都手机网站制作仿西部数码网站
  • 建设工程质量检测网站哪个企业做网站
  • 企业型网站建设咨询电话设计网页设计师培训
  • 给传销做网站购物系统简介