剑指 Offer 66. 构建乘积数组

public int[] constructArr(int[] a) {
        int len = a.length;
        if(len == 0) return new int[0];
        int[] b = new int[len];
        return multiply(a,b,len);
    }

    private int[] multiply(int[] a, int[] b,int len) {
        b[0] = 1;
        for(int i = 1;i<len;i++){
            b[i] = b[i-1]*a[i-1];
        }
        int temp = 1;
        for(int i = len-2;i>=0;i--){
            temp = temp * a[i+1];
            b[i] = b[i] * temp;
        }
        return b;
    }

我的前方是万里征途,星辰大海!!
原文地址:https://www.cnblogs.com/taoyuxin/p/13544505.html