Leetcode#69:Sqrt(x)

xiaoxiao2021-02-28  133

题目描述:求平方根

思路:利用牛顿迭代法求解即可

如有需要,请访问我的Github获取包含测试程序的C++源码。

class Solution { public: int mySqrt(int x) { long long y = x; while(y * y > x) { y = (y + x / y) / 2; } return y; } };

20180801更新:二分法

class Solution { public: int mySqrt(int x) { if (x <= 1) return x; int left = 0, right = x; while (left < right) { int mid = (left + right) / 2; if (x / mid >= mid) left = mid + 1; else right = mid; } return right - 1; } };
转载请注明原文地址: https://www.6miu.com/read-27365.html

最新回复(0)