Menu
CoddyTech

Two Sum

LeichtHashingpython iconjava iconcpp iconc iconjs icon+10

Du erhältst ein Array aus ganzen Zahlen nums und eine ganze Zahl target. Genau zwei Einträge von nums an zwei verschiedenen Positionen ergeben zusammen target. Gib die Indizes dieser beiden Einträge zurück, zuerst den kleineren Index.

Funktion

twoSum(nums: integer-array, target: integer) → integer-array
numsinteger-array
das Array von Ganzzahlen, das durchsucht werden soll
targetinteger
die Summe, die die beiden Einträge erreichen müssen
Gibt zurückinteger-array
die beiden Indizes, der kleinere zuerst

Einschränkungen

  • 2 ≤ nums.length ≤ 104
  • -109 ≤ nums[i] ≤ 109
  • -109 ≤ target ≤ 109
  • Genau ein Paar verschiedener Positionen ergibt zusammen target.

Beispiele

Eingabe
nums = [3, 8, 12, 5]target = 17
Ausgabe
[2, 3]
Erklärung
12 steht am Index 2 und 5 am Index 3, und 12 + 5 = 17. Kein anderes Paar ergibt 17.
challenge icon

Weiterführende Frage

Wenn nums bereits sortiert wäre, könntest du das Paar in O(n)-Zeit und mit nur O(1) zusätzlichem Speicher finden?

Code zurücksetzen
def twoSum(nums, target):
    # Schreibe hier den Code

Test #1

Test #2

Test #3

Argumente

nums = [3, 8, 12, 5]
target = 17

Erwartete Ausgabe

[2, 3]