算法(小理解

二分查找:

两个中间值的写法:

1.int middle = left + ((right - left) / 2)

2.int middle = (left + right) / 2;

在上述两种写法中,第一种要比第二种好得多,虽然这两个试子在数学角度上来说划出来的结果是一样的,那为什么第一种写法比第二种写法好?当left是一个很大的数,right也是一个很大的数的时候,left+right很有可能会超出int型能存下的最大值导致整数溢出的情况,而第一种写法很显然right - left一定不会超出那个范围

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值