只要保证答案在区间里。当左右边界距离足够小,比如1e-6,就可以认为找到了答案。 不需要处理边界问题。
1e-6
//以求三次方根为例,给出浮点数二分算法的模板 //题目保证x大于等于0 while (r - l >= 1e-8) { double mid = (l + r) / 2.0; if (mid * mid * mid >= x) { r = mid; } else { l = mid; } }
京公网安备 11010502049817号