剑指offer——构建乘积数组

构建乘积数组

https://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975db46?tpId=13&tqId=11204&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

solution:


std:

class Solution {
public:
    vector<int> multiply(const vector<int>& A) {
        int n = A.size();
        vector<int> b(n),c(n);
        c[0] = 1;
        for(int i=1;i<n;i++){
            c[i] = c[i-1]*A[i-1];
        }
        b[n-1] = 1;
        for(int i=n-2;i>=0;i--){
            b[i] = b[i+1]*A[i+1];
        }
        for(int i=0;i<n;i++){
            b[i] = b[i]*c[i];
        }
        return b;
    }
};
剑指offer 文章被收录于专栏

使用语言c++(比较喜欢用c++写编程题,java写的不熟)

全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务