class Solution:
def productExceptSelf(self, nums: List[int]) -> List[int]:
res = [0 for i in range(len(nums))]
k = 1
for i in range(len(nums)):
res[i] = k
k = k*nums[i]
k = 1
for j in range(len(nums)-1, -1, -1):
res[j] = res[j]*k
k = k*nums[j]
return res
先从左到右计算出除自身以外左边元素的乘积,再从右到左计算出从自身以外右边元素的乘积,最后相乘。