69 Sqrt(x)

Python

class Solution(object):
    def mySqrt(self, x):
        """
        :type x: int
        :rtype: int
        """
        left, right = 0, x
        while left <= right:
            mid = (left + right) // 2
            if mid*mid == x:
                return mid
            elif mid*mid < x:
                left = mid + 1
            else:
                right = mid - 1
        return right

Java

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

results matching ""

    No results matching ""