69. Sqrt(x)

来源:互联网 发布:百度读书软件 编辑:程序博客网 时间:2024/05/22 13:56

1、题目描述

输入非负整数x,返回sqrt(x)。


2、思路

二分法。

x<=1 return x;

left = 1, right = x,

mid = (left+right) /2;

具体不说了,看代码吧。


3、代码

    int mySqrt(int x) {        if(x<=1) return x;        int l=1,r=x;        while(l<=r){            int mid = l + (r-l)/2;            if(mid>x/mid)                r=mid-1;            else{                if(mid+1>x/(mid+1))                    return mid;                else                    l=mid+1;            }            }        return l;            }


原创粉丝点击