數組剔除元素後的乘積_LintCode

public class Solution {
    /**
     * @param A: Given an integers array A
     * @return: A Long array B and B[i]= A[0] * ... * A[i-1] * A[i+1] * ... * A[n-1]
     */
    public ArrayList<Long> productExcludeItself(ArrayList<Integer> A) {

      ArrayList<Long> B = new ArrayList<Long>();
        for (int i=0;i<A.size();i++){
            B.add(add(A,i));
        }

        return B;

    }
     public static  Long add(ArrayList<Integer> A,int i){
        Long a = Long.valueOf(1);
        for (int j = 0;j<i;j++){

            a = A.get(j)*a;

        }

        for (int j = i+1;j<A.size();j++){

            a = A.get(j)*a;
        }
    return a;
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章