int mid=(left+right)/2; //会有超过int类型的可能性 int mid=left+(right-left)/2; //这么做可以避免运算溢出
------------------------------------------------------------------------------------
int search(int x) { int left = 1, right = n; while (left <= right) { int mid = left+( right-left) / 2; if (a[mid] == x) return eeee(mid); else if (a[mid] > x) right = mid - 1; else left = mid + 1; } return -1; }
本文来自博客园,作者:magicat,转载请注明原文链接:https://www.cnblogs.com/magicat/p/15068443.html
浙公网安备 33010602011771号