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

政务网站建设信息嵊州网站制作

政务网站建设信息,嵊州网站制作,台州椒江网站建设,找广网背景#xff1a; 在写力扣题目“搜素插入位置 ”时#xff0c;发现二分法的一个细节点#xff0c;打算记录下来#xff0c;先看一张图#xff1a; 我们知道#xff0c;排序数组#xff0c;更高效的是二分查找法~~~而二分法就是切割中间#xff0c;定义left是最开始的 在写力扣题目“搜素插入位置 ”时发现二分法的一个细节点打算记录下来先看一张图 我们知道排序数组更高效的是二分查找法~~~而二分法就是切割中间定义left是最开始的也就是下标为0right 是最后一个 那么这个mid到底怎么写  简单想到的是int mid (left right) / 2; 但是还有更好的写法那就是int mid left (right - left) / 2 原因解析 1. 防止整数溢出关键原因 假设 left 2000000000right 2100000000 21亿 使用 (left right) / 2的情况下 left right 2000000000 2100000000 4100000000 但 int 最大只能存储 2147483647约21亿会导致整数溢出变成负数 使用 left (right - left) / 2的情况下 right - left 100000000 (right - left)/2 50000000 left 50000000 2050000000 完全不会溢出 2. 数学等价性 两者数学上是等价的 left (right - left)/2 left right/2 - left/2 left/2 right/2 (left right)/2 但计算机的整数运算会截断小数所以写法不同会影响结果。 对比总结 写法安全性可读性推荐度(left right)/2可能溢出更直观❌ 不推荐left (right - left)/2绝对安全稍复杂✅ 推荐 案例题目练习 给定一个排序数组和一个目标值在数组中找到目标值并返回其索引。如果目标值不存在于数组中返回它将会被按顺序插入的位置。 示例 1: 输入: nums [1,3,5,6], target 5 输出: 2 代码实现 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) {return mid;} else if (nums[mid] target) {left mid 1;} else {right mid - 1;}}return left;} }
http://www.pierceye.com/news/515994/

相关文章:

  • 我的网站突然找不到网页了seo是啥意思
  • 黑河做网站的公司平面设计现在怎么样
  • 银川网站建站中国建设银行人力资源网站
  • 建设部考试中心网站用自己的ip怎么查看dw8建设的网站
  • 九江网站建设九江商标设计网页
  • 网站建设资格预审公告附近广告设计与制作门店电话
  • 百度权重站长工具网页制作工具哪些好用
  • 关键词整站优化公司网站店招用什么软件做的
  • 租车网站模版广州市网站建设 骏域
  • 关闭网站怎么不保存我做的更改人工智能专业
  • ui中有哪些做的好看的网站简单logo设计
  • 深圳大型网站设计公司校园 网站建设 知乎
  • 西部数码网站流量怎么充优化网站界面的工具
  • 街区网站建设东阳市住房和城乡建设局网站
  • 怎样建设网站是什么网站代码制作软件
  • 成华区微信网站建设计公司加盟
  • 找个男做那个视频网站好高端网站建设公司
  • 做网站 毕业设计广东手机网页制作
  • 沈阳口碑最好的男科医院seo排名优化什么意思
  • 光谷做网站推广价格手机网站 教程
  • 泉州做网站多少钱关键词排名快照优化
  • 威海网站建设费用网站不能调用样式
  • 网站链接建设及引流营销世界500强企业中国有几家
  • 哪个网站做网络推好推广引流的10个渠道
  • 上海企业一网通办沂seo网站推广
  • 资阳网站网站建设官方网站建设公司
  • 企业网站建设一条龙服务内容如何自己免费创建网站
  • 重庆智能网站建设多少钱临海做网站
  • 创建好网站如何把浏览器合肥道路建设从哪个网站可以看到
  • 湖北省和建设厅网站自助建站模板