求一个正整数N的开平方(牛顿迭代法)

牛顿迭代法

解法参考:这里

	static double helper(int a) {
		if (n  < 2) return 1.0 * a;
		double x0 = 1; // 先假设一个初始值
		double x = x0 / 2 + a / x0 / 2; // 解, 把1-2的式子 = 右边括号展开
		while (Math.abs(x - x0) > 0.001) { // 误差范围
			x0 = x;
			x = x0 / 2 + a / x0 / 2;
		}
		return x;
	}
上一篇:【Python】常用数值方法的python实现


下一篇:Interpretable Explanations of Black Boxes by Meaningful Perturbation论文笔记