力扣989 数组形式的整数加法

在这里插入图片描述
在这里插入图片描述

思路  用List从低位到高位依次存储,然后Collections.reverse(res);逆置列表
class Solution {
    
    
    public List<Integer> addToArrayForm(int[] A, int K) {
    
    
        List<Integer> res = new ArrayList<Integer>();
        int n = A.length;
        for (int i = n - 1; i >= 0; --i) {
    
    
            int sum = A[i] + K % 10;
            K /= 10;
            if (sum >= 10) {
    
    
                K++;
                sum -= 10;
            }
            res.add(sum);
        }
        for (; K > 0; K /= 10) {
    
    
            res.add(K % 10);
        }
        Collections.reverse(res);
        return res;
    }
}

在这里插入图片描述

class Solution {
    
    
    public List<Integer> addToArrayForm(int[] A, int K) {
    
    
        List<Integer> res = new ArrayList<Integer>();
        int n = A.length;
        for (int i = n - 1; i >= 0 || K > 0; --i, K /= 10) {
    
    
            if (i >= 0) {
    
    
                K += A[i];
            }
            res.add(K % 10);
        }
        Collections.reverse(res);
        return res;
    }
}


猜你喜欢

转载自blog.csdn.net/qq_40310710/article/details/113006669