Middle — Senior
Eine Funktion erstellen, die ein Array von Zahlen akzeptiert und eine Zeichenkette mit den Bereichen aufeinanderfolgender Zahlen zurückgibt?
sobes.tech KI
Antwort von AI
Hier ist ein Beispiel für eine Funktion in Python, die ein sortiertes Array von Zahlen entgegennimmt und eine Zeichenkette mit Bereichen aufeinanderfolgender Zahlen zurückgibt. Aufeinanderfolgende Zahlen werden zu Bereichen vom Typ "Start-End" zusammengefasst, einzelne Zahlen werden so ausgegeben, wie sie sind.
def ranges_to_string(nums):
if not nums:
return ""
bereiche = []
start = vorher = nums[0]
for num in nums[1:]:
if num == vorher + 1:
vorher = num
else:
if start == vorher:
bereiche.append(str(start))
else:
bereiche.append(f"{start}-{vorher}")
start = vorher = num
# Füge den letzten Bereich hinzu
if start == vorher:
bereiche.append(str(start))
else:
bereiche.append(f"{start}-{vorher}")
return ",".join(bereiche)
# Beispiel zur Verwendung
arr = [1, 2, 3, 5, 6, 8, 9, 10]
print(ranges_to_string(arr)) # Ausgabe: 1-3,5-6,8-10