LeetCode 014:python自身以外の配列の積

1127 ワード

原題住所:
 https://leetcode-cn.com/problems/product-of-array-except-self/
タイトルの説明:
長さnの整数配列numsが与えられ、ここでn>1は出力配列outputを返し、そのうちoutput[i]numsnums[i]を除く各要素の積である.
例:
  : [1,2,3,4]
  : [24,12,8,6]

 O(n) 。


?( , 。)

class Solution(object):
    def productExceptSelf(self, nums):
        """
        :type nums: List[int]
        :rtype: List[int]
        """
        result=[1]*len(nums)
        tmp=1
        for i in range(1,len(nums)):
            result[i]=result[i-1]*nums[i-1]
        for j in range(len(nums)-2,-1,-1):
            tmp=tmp*nums[j+1]
            result[j]=result[j]*tmp
        return result