|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- Implement int sqrt(int x).
- Compute and return the square root of x, where x is guaranteed to be a non-negative integer.
- Since the return type is an integer, the decimal digits are truncated and only the integer part of the result is returned.
- Example 1:
- Input: 4
- Output: 2
- Example 2:
- Input: 8
- Output: 2
- Explanation: The square root of 8 is 2.82842..., and since
- the decimal part is truncated, 2 is returned.
复制代码
- class Solution {
- public int mySqrt(int x) {
- long start = 0;
- long mid = 0;
- long end = x;
-
- while(start+ 1 < end){
-
- mid = start + (end - start)/2;
-
- if(mid * mid == x) return (int)mid;
- else if(mid * mid < x) start = mid;
- else end = mid;
- }
-
- if(end * end == x) return (int)end;
-
- return (int)start;
- }
- }
复制代码 |
|