69. x 的平方根

题目链接:力扣

69. x 的平方根_第1张图片 

解题思路:二分查找, 从1到x进行二分找到一个最大的k是的K^2

AC代码

class Solution {
    public  static int mySqrt(int x) {
        int left = 1;
        int right = x;
        int result =0;
        while (left <= right) {
            int mid = (right-left)/2+left;
            int square = mid*mid;
            if (square/mid==mid&&mid*mid<=x){
                result =mid;
                left = mid+1;
            }else {
                right=mid-1;
            }
        }
        return result;
    }
}

69. x 的平方根_第2张图片

 

你可能感兴趣的:(LeetCode_Java版,二分,算法)