-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathSolution69.java
More file actions
57 lines (53 loc) · 1.19 KB
/
Copy pathSolution69.java
File metadata and controls
57 lines (53 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package leetcode.all.solution1_100;
/**
* 69. x 的平方根
* 实现 int sqrt(int x) 函数。
*
* 计算并返回 x 的平方根,其中 x 是非负整数。
*
* 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。
*
* 示例 1:
* 输入: 4
* 输出: 2
*
* 示例 2:
* 输入: 8
* 输出: 2
* 说明: 8 的平方根是 2.82842...,
* 由于返回类型是整数,小数部分将被舍去。
*
* @author 刘壮飞
* https://github.com/zfman.
* https://blog.csdn.net/lzhuangfei.
*/
public class Solution69 {
/**
* 调用系统库
* @param x
* @return
*/
public int mySqrt(int x) {
return (int)Math.sqrt(x);
}
/**
* 这个方法我还不太理解,备注
* @param x
* @return
*/
public int mySqrt2(int x) {
if(x<=1) return x;
long m=x;
while(m>x/m){
m=(m+x/m)/2;
}
return (int)m;
}
public static void main(String[] args) {
int x = 8;
int r = new Solution69().mySqrt(x);
int r2=new Solution69().mySqrt2(x);
System.out.println("Method1:"+r);
System.out.println("Method2:"+r2);
}
}