class Solution {
public int mySqrt(int x) {
int res = -1;
int left = 0;
int right = x;
while(right >= left){
int mid = (left + right) / 2;
if((long)mid * mid <= x){
res = mid;
left = mid + 1;
}else{
right = mid - 1;
}
}
return res;
}
}
依然是二分查找思想,你叫中间元素mid^2和x大小关系
(简单题走了好多弯路,我恨!!!!)