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

中小学生在线做试卷的网站眯眯扑克app哪个公司开发

中小学生在线做试卷的网站,眯眯扑克app哪个公司开发,运营一个app大概多少钱,国土局网站建设情况汇报一、前言 二分搜索算法本身并不是特别复杂,核心点主要集中在: 有序数组:指的是一个递增或者递减的区间(特殊情况如:【852. 山脉数组的峰顶索引】); 中间数:用来确定搜索目标落在左…

一、前言

二分搜索算法本身并不是特别复杂,核心点主要集中在:

  • 有序数组:指的是一个递增或者递减的区间(特殊情况如:【852. 山脉数组的峰顶索引】)

  • 中间数:用来确定搜索目标落在左半区间还是右半区间

进入 Medium 难度之后,这两个条件一般不会直接给出,需要解题者根据题目自行构造。

二、LeetCode 实战

1、378. 有序矩阵中第K小的元素

由水平和垂直方向为递增数组的条件,可以得到当前二维空间中的左上角为最小值,右下角为最大值,所以有序数组即为最小值到最大值的整数递增序列

题目要求计算出第 k 小的元素,那么从有序数组中挑选出来的中间数并不能直接与 k 进行比较,需要在二维空间中找出当前中间数是第几小的数字,再与 k 进行比较:

  • 如果当前中间数比第 k 小的元素要大,那么第 k 小元素必然在左半区间;

  • 否则必然落在右半区间;

通过当前二维数组水平和垂直方向单调递增的特性,可以从左下角开始搜索当前中间数为第几小的数字。

在这里插入图片描述

类似解题思路的还有:

  • 【74. 搜索二维矩阵】
2、875. 爱吃香蕉的珂珂

这道题要求我们找出一个最慢吃香蕉的速度,使得在 H 小时可以吃完 N 堆香蕉。

珂珂最慢吃香蕉的速度是每个小时吃1根,最快的速度是每小时吃掉 max(N),有序数组即为 1 到 max(N) 的整数递增序列

从有序数组中找出一个速度之后,还需要计算当前速度下吃完所有香蕉所需的时间和 H 相比较

  • 如果当前速度下吃完所有香蕉的时间大于 H,那么所需要搜索的速度 K 必然落在右半区间;

  • 反之,K 落在左半区间;

在这里插入图片描述

3、658. 找到 K 个最接近的元素

这道题要求我们找到一个起始下标 index,使得 [index, index + k) 中的数字最靠近 x 。

该题并没有隐藏有序数组这一条件,所以这道题目的难点在于如何通过中间下标来判断 index 落在哪个区间:

  • 首先考虑数组边界的问题,如果 mid + k > arr.length - 1,那么 index 必然在落在左半区间;

  • 接下来利用最靠近 x 和优先选择最小元素(也就是优先选择左边的元素)这两个条件:如果距离 x 左边的差值小于距离 x 右边的差值,那么 index 必然落在左半区间;

在这里插入图片描述

类似解题思路的题目还有:

  • 【275. H指数 II】
4、34. 在排序数组中查找元素的第一个和最后一个位置

这道题目相对比较简单,但是它与前面题目的差异在于:搜索目标不一定存在有序数组中,那么在搜索结束后,就需要注意特殊情况的处理。

通过两次二分搜索找出目标值的上下界限下标,再将上下界限值与目标值进行比对,从而得出正确的开始下标和结束下标:

在这里插入图片描述

参考视频:传送门

写在最后

算法作为计算机的基础学科,用 JavaScript 刷,一点也不丢人ε=ε=ε=┏(゜ロ゜;)┛。

本系列文章会分别给出一种算法的3种难度的总结篇(简单难度,中等难度以及困难难度)。在简单难度中,会介绍该算法的基本知识与实现,另外两个难度,着重讲解解题的思路。

如果本文对您有所帮助,可以点赞或者关注来鼓励博主。

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

相关文章:

  • 一流学科建设专题网站泉州网红餐厅
  • 免费做网站收录的先做网站还是先注册公司
  • 网站中的文章可以做排名吗wordpress 修改权限
  • 网站后台的seo功能怎么学电商从零开始
  • 成都哪家做网站的最好做网站克隆
  • 网站建设吉金手指排名15小清新文章网站
  • 安徽房地产网站建设技术社区网站开发例子
  • 如何更换网站服务器网站开发维护前景
  • iis发布域名网站电影院订票网站开发
  • 做网站多少钱zwnet沈阳市建设工程质量检测中心网站
  • 网站建设工作是干什么的做网站的优点
  • 厦门商场网站建设网站前端培训
  • 公司网站后台怎么上传视频工信部网站备案被注销
  • 做本地地旅游网站龙岩网站排名
  • 个人免费注册公司网站网站建设与管理 期末
  • 怎么查有做网站的公司互联网的营销推广方式
  • 北京工程工程建设交易信息网站汕头市建设工程交易网
  • 在网站上做的h5如何发到微信上网站职业培训机构
  • 深圳网站建设找哪网站建设架构
  • 建设网站需要申请什么软文写作公司
  • 趴比库的网站是谁建设的深圳福田有什么好玩的地方
  • 西峡网站开发wordpress内容页列表显示
  • 免费素材下载网站海南网络广播电视台官网
  • 个人静态网页制作杭州企业网站优化
  • 深圳网站设计 制作元wordpress付费阅读主题
  • 专业网站建设商家展厅室内设计公司
  • 企业网站手机版源码下载外贸软件的建立
  • 建设厅国网查询网站休闲咖啡厅网站开发目标
  • 中山高端网站建设公司网站建设分金手指排名十二
  • 接网站开发做多少钱网站建设可以作为无形资产吗