在经典二分查找法算法题中, 需要取数组中间元素的位置,那么第一反应不难写出 int mid = (left + right) / 2; 但是这么写其实会有⼀个问题,就是可能会发生溢出,left +right 很有可能会超出int的范围 。
最好写int mid = left + (right-left)/2;这样可以很大程度上避免溢出的问题。
在经典二分查找法算法题中, 需要取数组中间元素的位置,那么第一反应不难写出 int mid = (left + right) / 2; 但是这么写其实会有⼀个问题,就是可能会发生溢出,left +right 很有可能会超出int的范围 。
最好写int mid = left + (right-left)/2;这样可以很大程度上避免溢出的问题。