题目描述:
不用sqrt(x)库函数,实现求平方根。
解题思路:
采用二分法
假定要求数num的平方根,那么首先取1~num之间的中点mid。
若 mid * mid > num,那么 根在 1~mid-1之间;
若 mid * mid < num,那么根在 mid+1~num 之间;
若 mid * mid == num,直接输出 mid;
由于整数int求平方根是向下取整,所以,若mid * mid < x情况下,根可能是mid. 依据上面假设根在mid+1~num之间,那么mid+1~num之间的所有跟都大于num。所以在退出的时候要处理一下。
<span style="font-size:18px;">if (min*min > num)
return min - 1;
else
retur