989--数组形式的整数加法(数字转为数组的处理)


原题

对于非负整数 X 而言,X 的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果 X = 1231,那么其数组形式为 [1,2,3,1]。

给定非负整数 X 的数组形式 A,返回整数 X+K 的数组形式。

将给定的数字转为数组的方法

for (; k > 0; k /= 10) {
        res.add(k % 10);
    }

容器进行翻转的方法

Collections.reverse(res);

题解

public  List addToArrayForm(int[] num, int k) {
    int n=num.length;
    List list=new ArrayList<>();
    for(int i=n-1;i>=0||k>0;i--,k/=10){
        if(i>=0){
            k+=num[i];
        }
        list.add(k%10);
    }
    Collections.reverse(list);
    return list;
}

相关