题目

思路
left[i]表示以i为中心,左边的乘积结果(前缀积)
right[i]表示以i为中心,右边的乘积结果(后缀积)
left[i] * right[i]就是除去i外,其余各元素的乘积。
代码
class Solution:def productExceptSelf(self, nums: List[int]) -> List[int]:n = len(nums)left = [None]*nleft[0] = 1right = [None]*nright[-1] = 1# leftfor i, num in enumerate(nums[:n-1], start=1):left[i] = left[i-1] * num# rightfor i in range(n-1, 0, -1):right[i-1] = right[i]*nums[i]# left * rightans = list(map(lambda x: x[0]*x[1], zip(left, right)))return ans
