实现函数 int mysqrt(int x).
计算并返回 x 的平方根(向下取整)
数据范围: 
要求:空间复杂度
,时间复杂度
二分法
class Solution {
public:
/**
*
* @param x int整型
* @return int整型
*/
int mysqrt(int x) {
if(x==1) return 1;
if(x==0) return 0;
int left = 0; // 左边界
int right = x; // 右边界
while(left <= right) {
int mid = left + (right-left)/2; // 防止int溢出,等同于(left+right)/2
if(mid==x/mid || (mid<x/mid && (mid+1)>x/(mid+1))) return mid;
if(mid<x/mid) left=mid+1;
if(mid>x/mid) right=mid-1;
}
return -1;
}
};
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param x int整型
* @return int整型
*
* C语言声明定义全局变量请加上static,防止重复定义
*
* C语言声明定义全局变量请加上static,防止重复定义
*/
int Sqrt(int x ) {
// write code her
return mysqrt(x)/1;
}就是懒~~~ 佬勿喷