题目
实现 int sqrt(int x) 函数。
计算并返回 x 的平方根,其中 x 是非负整数。
由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。
示例 1:
输入: 4
输出: 2
示例 2:
输入: 8
输出: 2
说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/sqrtx
解题思路
- 我们就不需要做过多思考直接,首先创建一个变量i,初始为0。
- 然后我们就直接进入while循环,我们讲可能出现的一种情况作为终止条件。
- 之后我们把另外一种情况,在循环里判断之后在跳出循环。
代码
- 话不多说我们直接上代码
var mySqrt = function(x) {
if(x===0) return 0;
var i = 0;
while ( !(Math.pow(i, 2) < x && Math.pow(i + 1,2) > x) ){
i++;
if(Math.pow(i,2) === x) break;
}
return i
};