leetcode69 Sqrt(x)

Implement int sqrt(int x).

Compute and return the square root of x.

 1 class Solution {//二分
 2 public:
 3     int mySqrt(int x) {
 4         if(x<=1)
 5             return x;
 6         int a=1,b=x;
 7         int m;
 8         while(a<=b)
 9         {
10             m=a+(b-a)/2; //防止溢出
11             int y=x/m;
12             if(m==y)   //防止溢出
13             {
14                 return m;
15             }
16             if(m<y)
17             {
18                 a=m+1;
19             }
20             else
21                 b=m-1;
22         }
23         return b;
24     }
25 };
View Code

 

posted @ 2016-01-06 15:50  西小贝  阅读(145)  评论(0编辑  收藏  举报