题目 解法 牛顿迭代法 /* fx = x^2 - a; fx = fx_0 + (x - x_0)(2 * x_0) = 0 x = (a - x^2) / (2 * x_0) + x_0 */ class Solution { public: int mySqrt(int x) { double n = 1; double n1 = (x - n * n)/(2 * n) + n; while(abs(n - n1) > 1e-5) { n = n1; n1 = (x - n * n)/(2 * n) + n; } return (int)n; } };