请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于整型溢出问题

问题详情:在5-1视频10:10左右,老师特别提到的以(l+(r-l))/2的公式代替(l+r)/2以求mid索引,以防整型溢出问题,可以举个例子吗?
图片描述

正在回答

1回答

比如 l = 1000000000; r = 2000000000 (后面有 9 个 0)。mid 是 1500000000。


这三个值都在 int 的范围里。但是,l + r = 3000000000,这个数字在 int 的范围外。使用 (l + r)  / 2 会整型溢出,但是 l + (r - l) / 2 不会。


继续加油!:)

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信