如何使用Java以有效的方式对具有10 ^ 6位数的数组进行排序

时间:2017-07-26 03:48:21

标签: java

如何使用Java以有效的方式对具有10 ^ 6位数字的数组进行排序

我很确定我们可以使用Strings

来实现

但是没有在Java中使用Strings的其他方法吗?

1 个答案:

答案 0 :(得分:5)

使用BigInteger并利用Java的排序API

import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Collections;

public class Main {

    public static void main(String[] args) {
        ArrayList<BigInteger> list = new ArrayList<>();
        list.add(new BigInteger("12"));
        list.add(new BigInteger("1223876987587658765876732097234987236497823649287346987324609234786923748601298763290444"));
        list.add(new BigInteger("126235812763548126375182763518236512983761927836012983719274629183746912874612948761298746912837342"));
        list.add(new BigInteger("32342"));

        Collections.sort(list);

        System.out.println(list);
    }
}

打印:

[12, 32342, 1223876987587658765876732097234987236497823649287346987324609234786923748601298763290444, 126235812763548126375182763518236512983761927836012983719274629183746912874612948761298746912837342]