侧边栏壁纸
博主头像
Hope博主等级

努力赚钱的工科研究生

  • 累计撰写 362 篇文章
  • 累计创建 129 个标签
  • 累计收到 5 条评论
标签搜索

LeetCode 238. 除自身以外数组的乘积

Hope
2022-04-22 / 0 评论 / 0 点赞 / 315 阅读 / 358 字
温馨提示:
本文最后更新于 2022-04-22,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

LeetCode 238. 除自身以外数组的乘积

思路:

首先定义答案数组,s[i] 表示 nums[0 ~ i - 1] 的乘积,那么最后的答案就是反向遍历数组,s记录路径的乘积。

代码:

class Solution {
public:
    vector<int> productExceptSelf(vector<int>& nums) {
        vector<int> res(nums.size(),1);//  s[i] : 0 ~ i - 1 乘积
        
        for(int i = 0; i < nums.size(); i++){
            if(i) res[i] = nums[i - 1] * res[i - 1];
        }
        for(int j = nums.size() - 1, s = 1; j >= 0; j--){
            res[j] *= s;
            s = s *nums[j];
        }
        return res;
    }
};
0

评论区