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

Posted 醉苼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode238. 除自身以外数组的乘积相关的知识,希望对你有一定的参考价值。

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

链接:
(https://leetcode-cn.com/problems/product-of-array-except-self/solution/zuo-bian-de-shu-cheng-yi-you-bian-de-shu-wn33/)

解题思路
除自身以外数组的乘积 = 这个数左边的乘积X这个数右边的乘积

代码:

class Solution {
    public int[] productExceptSelf(int[] nums) {
        int n = nums.length;
		if(n <= 1) return nums;
		//左边数的乘积
		int left = 1;
		//右边数的乘积
		int right = 1;
		int[] res = new int[n];
		for(int i = n-1; i >= 0; i--) {
			res[i] = nums[i] * right;
			right = res[i];
		}
		
		for(int i = 0; i < n; i++) {
			res[i] = left;
			if(i < n-1) res[i] *= res[i+1];
			left *= nums[i];
		}
		return res;
    }
}

以上是关于LeetCode238. 除自身以外数组的乘积的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode每日一题2020.6.4 238. 除自身以外数组的乘积

leetcode中等238除自身以外数组的乘积

题目地址(238. 除自身以外数组的乘积)

LeetCode 238. 除自身以外数组的乘积( Product of Array Except Self)

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

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