0
点赞
收藏
分享

微信扫一扫

005-x的平方根

西特张 2022-05-04 阅读 65

二分查找的方法来实现x的平方根的求解

public static int binarySearch(int x)
{
	int index = -1,left = 0,right = x;
	while(left<=right)
	{
		int mid = (left+right)/2;
		if(mid*mid<=x)
		{
			index = mid;
			left = mid+1;
		}
		else
		{
			right=mid-1;
		}
	}
	return index;
}

使用牛顿迭代的方法计算x的平方根

public static int newton(int x)
{
	if(x==0)return 0;
	else return (int)trueSqrt(x,x);
}

public static double trueSqrt(double i,int x)
{
	double res = (i+x/i)/2;
	if(res==i)return i;
	else return trueSqrt(res,x);
}
举报

相关推荐

0 条评论