构建乘积数组

class Solution {
public:
    vector<int> multiply(const vector<int>& nums) {
        int n=nums.size();
        if(n==0) return vector<int>();
        vector<int> q(n,1);
        for (int i = 1,t=nums[0]; i < n; i ++ )//t记录前i个数的乘积
        {
            q[i]=t;
            t*=nums[i];
        }
        for (int i = n-2,t=nums[n-1]; i >= 0; i -- )//t记录后i个数的乘积
        {
            q[i]*=t;
            t*=nums[i];
        }
        return q;
    }
};
posted @   穿过雾的阴霾  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示