牛骨文教育服务平台(让学习变的简单)
博文笔记

LeetCode 238 计算数组除自己外的元素乘积

创建时间:2017-03-01 投稿人: 浏览次数:301
class Solution {
public:
    vector<int> productExceptSelf(vector<int>& nums) {
        int n = nums.size();
        vector<int> res(n, 1); // res有n个元素,值为1
        if(n <= 1){
            return nums;
        }
        for(int i = 1; i < n; i++){ // res={1, n0, n0n1, n0n1n2};
            res[i] = res[i-1] * nums[i-1];
        }
        int right = 1;
        for(int i = n-2; i >= 0; i--){
            right *= nums[i+1]; // right = n3,n3n2,n3n2n1
            res[i] = res[i]*right;
        }
        return res;
    }
};

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。