二进制搜索到计算平方根 (Java)
2022-09-04 05:03:15
我需要帮助编写一个程序,该程序使用二进制搜索来递归计算输入非负整数的平方根(向下舍入到最接近的整数)。
这是我到目前为止所拥有的:
import java.util.Scanner;
public class Sqrt {
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
System.out.print("Enter A Valid Integer: ");
int value = console.nextInt();
calculateSquareRoot(value);
}
public static int calculateSquareRoot(int value) {
while (value > 0) {
double sqrt = (int) Math.sqrt(value);
System.out.println(sqrt);
}
return -1;
}
}
它必须使用二进制搜索来计算平方根的事实是让我感到困惑的部分。如果有人对如何做到这一点有任何建议,将不胜感激。谢谢