关闭

leetcode :Binary Search:Sqrt(x)(069)

82人阅读 评论(0) 收藏 举报
分类:

Implement int sqrt(int x).

Compute and return the square root of x.


class Solution {
public:
    int sqrt(int x) {
        if (x == 0)
            return 0;
        int l = 1, r = x / 2 + 1;
        while (l <= r) {
            int m = (l + r) / 2;
            if (m <= x / m && x / (m + 1) < m + 1)
                return m;
            if (x / m < m)
                r = m - 1;
            else
                l = m + 1;
        }
        // will not be here
        return 0;
    }
};
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:125257次
    • 积分:6905
    • 等级:
    • 排名:第3581名
    • 原创:589篇
    • 转载:2篇
    • 译文:0篇
    • 评论:2条
    最新评论