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

题目描述:

主要思路:

正逆各扫一遍,利用数组存储当前数左边和右边的乘积。

cpp 复制代码
class Solution {
public:
    vector<int> productExceptSelf(vector<int>& nums) {
        int n=nums.size();
        vector<int> ans;
        int l[n+1],r[n+1];
        l[0]=1,r[n]=1;
        for(int i=n-1;i>=0;--i)
            r[i]=r[i+1]*nums[i];
        for(int i=0;i<n;++i)
        {
            ans.push_back(r[i+1]*l[i]);
            l[i+1]=l[i]*nums[i];
        }
        return ans;
    }
};
相关推荐
Promise4855 小时前
贝尔曼公式的迭代求解笔记
笔记·算法
fish_xk6 小时前
数据结构之二叉树中的堆
数据结构
福尔摩斯张6 小时前
Linux进程间通信(IPC)机制深度解析与实践指南
linux·运维·服务器·数据结构·c++·算法
你好~每一天6 小时前
未来3年,最值得拿下的5个AI证书!
数据结构·人工智能·算法·sqlite·hbase·散列表·模拟退火算法
杰克尼7 小时前
3. 分巧克力
java·数据结构·算法
zmzb01037 小时前
C++课后习题训练记录Day39
数据结构·c++·算法
Ayanami_Reii8 小时前
进阶数学算法-取石子游戏(ZJOI2009)
数学·算法·游戏·动态规划·区间dp·博弈论
一只小小汤圆8 小时前
已知圆弧的起点、终点、凸度 求圆弧的圆心
算法
丸码8 小时前
Java HashMap深度解析
算法·哈希算法·散列表
算法与编程之美8 小时前
Java数组动态扩容
java·开发语言·python·算法