Get the App
SLTechnology News&Howtos  ›  Internet Technology  › 

How to construct Product Array by LeetCode

Shulou Source: shulou.com Published: 2022-06-01 13:06:19 10月24日 Update

Editor to share with you how to build LeetCode product array, I believe most people do not know much about it, so share this article for your reference, I hope you can learn a lot after reading this article, let's go to know it!

Topic description

Given an array A [0BZ 1, … , nMuth1], please construct an array B [0JEI 1, … , nmur1], where the element B [I] = A [0] × A [1] × … × A [iMur1] × A [I + 1] × … × A [nMuth1]. Division cannot be used.

The sum of the product of all elements does not overflow the 32-bit integer a.length List [int]:

# traverse from left to right, then from right to left

# maintain the prefix product array. When traversing from right to left, you only need to maintain the suffix product, and then multiply the previous prefix product, the result is the product of the left and right elements of the current element

Lefts = []

Left = 1

For x in a:

Left * = x

Lefts.append (left)

# only suffix product needs to be maintained here, and there is no need to build a suffix product array

Right = 1

Res = [0] * len (a)

For i in range (len (a)) [::-1]:

# Note that there is no element on the left when the subscript is 0, and the product of the left part is set to 1

Left = lefts [I-1] if I > 0 else 1

Res [I] = left * right

# notice that the current element is multiplied by it after it has been processed, because the result does not contain the current element itself

Right * = a [I]

Return res above is all the content of the article "how to build a product array by LeetCode". Thank you for reading! I believe we all have a certain understanding, hope to share the content to help you, if you want to learn more knowledge, welcome to follow the industry information channel!

Tags: Elements arrays product prefixes complexity complexity time topics suffixes ideas articles results necessity code content schemes steps division processing subscript Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Shulou Information macOS Redmi vpn OPPO Reno