from typing import List
classSolution:defproductExceptSelf(self, nums: List[int])-> List[int]:
n =len(nums)if n <=1:return[]# 查出0的个数
count_zero =0
data =1
res =[]for i inrange(n):if nums[i]==0:
count_zero +=1else:
data *= nums[i]if count_zero >=2:
res =[0for _ inrange(n)]if count_zero ==1:for i inrange(n):if nums[i]==0:
res.append(data)else:
res.append(0)if count_zero ==0:for i inrange(n):
res.append(data // nums[i])return res
if __name__ =='__main__':
s = Solution()
a = s.productExceptSelf([1,2,3,4])print(a)
2.2 暴力法,超时
from typing import List
# 暴力法,不行classSolution:defproductExceptSelf(self, nums: List[int])-> List[int]:
n =len(nums)if n <=1:return[]
res =[]for i inrange(n):
temp =1for j inrange(n):if i != j:
temp *= nums[j]
res.append(temp)return res