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

238. 除自身以外数组的乘积 - 力扣(LeetCode)

java 复制代码
class Solution {
    /**
    2024.6.17
    思路还是比较巧妙,遍历元素2遍,从左往右,算每个元素左边的乘积,不断累乘,直接赋值;
    再从右往左,右边元素乘积再乘以上一遍左边元素乘积,就得到结果了
     */
    public int[] productExceptSelf(int[] nums) {
        int[] res=new int[nums.length];
        int leftN=1;
        int rightN=1;

        for(int i=0;i<nums.length;i++){
            res[i]=leftN;
            // 从左往右,第一遍一直累乘
            leftN*=nums[i];
        }

        for(int i=nums.length-1;i>=0;i--){
            res[i]=res[i]*rightN;
            rightN*=nums[i];
        }

        return res;
    }
}
相关推荐
千金裘换酒6 小时前
LeetCode 移动零元素 快慢指针
算法·leetcode·职场和发展
wm10436 小时前
机器学习第二讲 KNN算法
人工智能·算法·机器学习
NAGNIP6 小时前
一文搞懂机器学习线性代数基础知识!
算法
NAGNIP6 小时前
机器学习入门概述一览
算法
iuu_star7 小时前
C语言数据结构-顺序查找、折半查找
c语言·数据结构·算法
Yzzz-F7 小时前
P1558 色板游戏 [线段树 + 二进制状态压缩 + 懒标记区间重置]
算法
漫随流水7 小时前
leetcode算法(515.在每个树行中找最大值)
数据结构·算法·leetcode·二叉树
mit6.8248 小时前
dfs|前后缀分解
算法
扫地的小何尚8 小时前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
千金裘换酒9 小时前
LeetCode反转链表
算法·leetcode·链表