leedcode 除自身以外數組的乘積

使用兩個輔助數組,一個保存某個元素左邊所有元素的乘積,一個保存某個元素右邊所有元素的乘積。最終根據這兩個輔助數組來得到最終結果數組。

class Solution:
    def productExceptSelf(self, nums: List[int]) -> List[int]:
        left = []
        right = []
        left.append(nums[0])
        right.append(nums[-1])
        ll = len(nums)
        for i in range(1, len(nums)):
            left.append(left[i - 1] * nums[i])
            right.append(right[i - 1] * nums[ll - i - 1])
        right.reverse()
        res = []
        res.append(right[1])
        for i in range(1, ll - 1):
            res.append(left[i - 1] * right[i + 1])
        res.append(left[ll - 2])
        return res

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章