Python :: Aufgabe #343 :: Lösung #2
2 Lösungen

#343
Längste aufsteigende Zahlenfolge im Array
Anfänger - Python
von JKooP
- 16.04.2021 um 18:05 Uhr
Gegeben ist ein Array bestehend aus aufsteigenden Integer-Zahlenfolgen,
die hin und wieder durch nicht in die Folge passende Zahlen unterbrochen werden.
Ziel soll es sein, die längste aufsteigende Zahlenfolge zu ermittelt.
Beispiel 1:
arr = {1, 3, 5, 4, 7, 8, 9, 10, 6, 2, 3, 4}
Lösung: 5 => {4, 7, 8, 9, 10}
Beispiel 2:
arr = {5, 5, 5, 5, 5}
Lösung: 1 => {5}
Schreibe eine Methode/Funktion, die als Ergebnis die Länge der längsten Zahlenfolge ausgibt.
Viel Spaß
die hin und wieder durch nicht in die Folge passende Zahlen unterbrochen werden.
Ziel soll es sein, die längste aufsteigende Zahlenfolge zu ermittelt.
Beispiel 1:
arr = {1, 3, 5, 4, 7, 8, 9, 10, 6, 2, 3, 4}
Lösung: 5 => {4, 7, 8, 9, 10}
Beispiel 2:
arr = {5, 5, 5, 5, 5}
Lösung: 1 => {5}
Schreibe eine Methode/Funktion, die als Ergebnis die Länge der längsten Zahlenfolge ausgibt.
Viel Spaß
#2

von AlexGroeg (2010 Punkte)
- 17.04.2021 um 18:35 Uhr

def ist_längste_aufsteigende_zahlenfolge(arr): zahlenfolge = [arr[0]] z = [] for i in range(1,len(arr)): if arr[i-1] == arr[i]-1: zahlenfolge.append(arr[i]) else: if len(zahlenfolge) > 1: z.append(zahlenfolge.copy()) zahlenfolge.clear() zahlenfolge.append(arr[i]) z.append(zahlenfolge.copy()) return max(z) beispiele = [[1, 3, 5, 4, 7, 8, 9, 10, 6, 2, 3, 4], [5, 5, 5, 5, 5]] for arr in beispiele: print(ist_längste_aufsteigende_zahlenfolge(arr))
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1