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
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
