Menu
CoddyTech

Product of Array Except Self

MittelPräfixsummenpython iconjava iconcpp iconc iconjs icon+10

Du erhältst ein Array aus ganzen Zahlen nums. Gib ein Array answer derselben Länge zurück, wobei answer[i] das Produkt aller Elemente von nums außer dem am Index i ist. Führe dies in O(n)-Zeit und ohne Division aus.

Funktion

productExceptSelf(nums: integer-array) → integer-array
numsinteger-array
das Array von Ganzzahlen mit mindestens zwei Elementen
Gibt zurückinteger-array
ein Array, dessen Wert am Index i das Produkt aller Elemente außer nums[i] ist

Einschränkungen

  • 2 ≤ nums.length ≤ 104
  • -30 ≤ nums[i] ≤ 30
  • Das Produkt aller Werte ungleich null in nums passt in eine vorzeichenbehaftete 32-Bit-Ganzzahl, daher passt auch jedes Produkt, das du auf dem Weg bildest.

Beispiele

Eingabe
nums = [2, 3, 4, 5]
Ausgabe
[60, 40, 30, 24]
Erklärung
Wenn man die 2 weglässt, bleiben 3 × 4 × 5 = 60, und wenn man die 5 weglässt, bleiben 2 × 3 × 4 = 24. Bei den beiden mittleren funktioniert es genauso: 2 × 4 × 5 = 40 und 2 × 3 × 5 = 30.

lock icon+14 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Kannst du nur zusätzlichen Speicherplatz von O(1) verwenden, ohne das Array mitzuzählen, das du zurückgibst?

Code zurücksetzen
def productExceptSelf(nums):
    # Schreibe hier den Code
Testfälle

Fall 1

Fall 2

Fall 3

Eingabe

nums = [2, 3, 4, 5]

Erwartet

[60, 40, 30, 24]