Menu
CoddyTech

Summary Ranges

Du erhältst ein sortiertes Array nums mit eindeutigen Ganzzahlen. Teile es in möglichst wenige Bereiche aufeinanderfolgender Ganzzahlen auf, sodass jeder Wert genau zu einem Bereich gehört. Gib einen Bereich a..b als Text "a->b" aus oder als "a", wenn er nur einen Wert enthält. Gib die Bereiche in aufsteigender Reihenfolge zurück.

Funktion

summaryRanges(nums: integer-array) → string-array
numsinteger-array
das sortierte Array unterschiedlicher Ganzzahlen
Gibt zurückstring-array
die Bereiche als Text, von den kleinsten bis zu den größten Werten

Einschränkungen

  • 1 ≤ nums.length ≤ 5000
  • -109 ≤ nums[i] ≤ 109
  • nums ist aufsteigend sortiert und enthält keine Duplikate.

Beispiele

Eingabe
nums = [0, 1, 2, 5, 6, 9]
Ausgabe
["0->2", "5->6", "9"]
Erklärung
0, 1, 2 folgen aufeinander und bilden daher "0->2". Der Sprung von 2 zu 5 beginnt einen neuen Bereich, "5->6", und 9 steht allein als "9".

lock icon+16 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Angenommen, nums könnte Duplikate enthalten, zum Beispiel [1, 2, 2, 3]. Was würdest du ändern, damit weiterhin "1->3" ausgegeben wird?

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

Fall 1

Fall 2

Eingabe

nums = [0, 1, 2, 5, 6, 9]

Erwartet

["0->2", "5->6", "9"]