我用Java编写了一个计算2的幂的程序,但它看起来非常低效.对于较小的功率(比如2 ^ 4000),它可以在不到一秒的时间内完成.但是,我正在考虑计算2 ^ 43112609,这比最大的已知素数大一个.超过1200万个数字,运行需要很长时间.到目前为止,这是我的代码:
import java.io.*;
public class Power
{
private static byte x = 2;
private static int y = 43112609;
private static byte[] a = {x};
private static byte[] b = {1};
private static byte[] product;
private static int size = 2;
private static int prev = 1;
private static int count = 0;
private static int delay = 0;
public static void main(String[] args) throws IOException
{
File f = new File("number.txt");
FileOutputStream output = new …Run Code Online (Sandbox Code Playgroud)