题解 | #求平方根#
求平方根
https://www.nowcoder.com/practice/09fbfb16140b40499951f55113f2166c
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param x int整型 * @return int整型 */ public int sqrt (int x) { // write code here long ret = 0; int left = 1; int right = x; long num = 0; for (;left <= right;){ ret = (left + right) / 2; if ((ret*ret) < x){ if (((ret+1) * (ret+1)) > x){ break; } left = (int)ret + 1; }else if ((ret*ret) > x){ if (((ret-1) * (ret-1)) < x){ ret--; break; } right = (int)ret - 1; }else if((ret*ret) == x){ break; } } return (int)ret; } }