java用数组实现大整数相加
时间: 2024-01-21 11:48:01 浏览: 85
可以通过以下代码实现Java中用数组实现大整数相加:
```
public static int[] add(int[] a, int[] b) {
int[] result = new int[Math.max(a.length, b.length)];
int carry = 0;
for (int i = 0; i < result.length; i++) {
int a_value = i < a.length ? a[a.length - 1 - i] : 0;
int b_value = i < b.length ? b[b.length - 1 - i] : 0;
int sum = a_value + b_value + carry;
result[result.length - 1 - i] = sum % 10;
carry = sum / 10;
}
if (carry > 0) {
int[] new_result = new int[result.length + 1];
System.arraycopy(result, 0, new_result, 1, result.length);
new_result[0] = carry;
return new_result;
}
return result;
}
```
在这里,我们首先创建一个长度为两个数字长度的最大值的数组作为结果,然后从最后一位开始向前遍历数组,同时计算两个数字和一个进位的和。最后,如果存在进位,则需要将结果数组的长度加1。
阅读全文