思路
pre来存储当前值的前缀乘积 nums[0]无前缀,设置为1
nex来存储当前值的后缀乘积 nums[-1]无后缀,设置为1
遍历pre、nex即可算出当前位置除自身之外的乘积
class Solution(object):
def productExceptSelf(self, nums):
"""
:type nums: List[int]
:rtype: List[int]
"""
pre=[1]*len(nums)
nex =[1]*len(nums)
sums=[]
s =1
t = 1
for i in range(1,len(nums)):
s=s*nums[i-1]
pre[i]=s
for i in range(len(nums)-2,-1,-1):
t = t*nums[i+1]
nex[i]= t
for i in range(len(nums)):
sums.append(pre[i]*nex[i])
return sums