Python :: Aufgabe #302 :: Lösung #3
5 Lösungen
#302
Kleinste positive Zahl in einem Array
Fortgeschrittener - Python
von JKooP
- 21.11.2020 um 11:42 Uhr
Gegeben sei ein (beliebig großes) unsortiertes Integer- Array welches sowohl aus positiven als auch negativen Zahlen besteht.
Ermittelt werden soll die erste fehlende positive Zahl im Array.
Beispiele:
arr = [1, 2, 0] sortiert: [0, 1, 2]
Lösung: 3
arr = [5, 4, -2, -1, 1] sortiert: [-2, -1, 1, 4, 5]
Lösung: 2
arr = [6, 7, 8, 9, 10]
Lösung: 1
arr = [-4, -2, -1]
Lösung: 1
arr = [1, 2, 3, 4, 2147483647, 8]
Lösung: 5
arr = []
Lösung: 1
Viel Spaß
Ermittelt werden soll die erste fehlende positive Zahl im Array.
Beispiele:
arr = [1, 2, 0] sortiert: [0, 1, 2]
Lösung: 3
arr = [5, 4, -2, -1, 1] sortiert: [-2, -1, 1, 4, 5]
Lösung: 2
arr = [6, 7, 8, 9, 10]
Lösung: 1
arr = [-4, -2, -1]
Lösung: 1
arr = [1, 2, 3, 4, 2147483647, 8]
Lösung: 5
arr = []
Lösung: 1
Viel Spaß
#3
von Leinart (90 Punkte)
- 14.12.2020 um 21:28 Uhr
Python-Code
def smallestnumber(a): a.sort() c = doubleelemination(a) for i in c[:]: if i <= 0: c.remove(i) b=len(c)+1 for i in range(b): if i == b-1: return i+1 elif i+1 != c[i]: return i+1 else: pass def doubleelemination(a): for i in a[:]: b = a.count(i) while b >1: a.remove(i) b = b-1 return a if __name__ == "__main__": a= [] #Der Array welcher untersucht werden soll b=smallestnumber(a) print(b)
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1