二分查找中mid取值注意

如果用mid=(left+right)/2,在運行二分查找程序時可能溢出超時。

因爲如果left和right相加超過int表示的最大範圍時就會溢出變爲負數。

 

所以如果想避免溢出,不能使用mid=(left+right)/2,應該使用mid=left+(right-left)/2。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章