Prüfen ob eine Liste sortiert ist
Verfasst: Donnerstag 31. Oktober 2019, 17:00
Einen wunderschönen Guten Tag,
gleich mal am Anfang. Im Studium habe ich jetzt zum ersten mal mit programmieren zu tun(studiere kein Informatik) und stehe dort noch ganz am Anfang, also verzeiht mir, wenn ich mich etwas dämlich anstelle.
Die Aufgabe war, eine Liste mit Zufallszahlen per SelectionSort zu sortieren. Das funktioniert auch soweit. Allerdings sollen wir bevor und nachdem wir die Liste sortieren abfragen ob die Liste sortiert ist oder nicht (per funktion). Diese soll dann wahr oder falsch ausgeben.
Soweit funktioniert auch alles, nur werden bei teste_sortierung scheinbar nur die ersten beiden Elemente verglichen und dann hört die Schleife auf. Ist das allgemein falsch oder woran kann das liegen?
Schonmal danke im voraus
gleich mal am Anfang. Im Studium habe ich jetzt zum ersten mal mit programmieren zu tun(studiere kein Informatik) und stehe dort noch ganz am Anfang, also verzeiht mir, wenn ich mich etwas dämlich anstelle.
Die Aufgabe war, eine Liste mit Zufallszahlen per SelectionSort zu sortieren. Das funktioniert auch soweit. Allerdings sollen wir bevor und nachdem wir die Liste sortieren abfragen ob die Liste sortiert ist oder nicht (per funktion). Diese soll dann wahr oder falsch ausgeben.
Soweit funktioniert auch alles, nur werden bei teste_sortierung scheinbar nur die ersten beiden Elemente verglichen und dann hört die Schleife auf. Ist das allgemein falsch oder woran kann das liegen?
Schonmal danke im voraus
Code: Alles auswählen
import random
def selectionsort(L):
n = len(L)
for i in range(n):
for j in range(i+1,n):
if L[j] <= L[i]:
L[i],L[j] = L[j],L[i]
def teste_sortierung(L):
n=len(L)
for i in range(n-1):
if (L[i] <= L[i+1]):
return True
else:
return False
n = 5
liste = []
for i in range(n):
liste.append(random.randint(0,1000))
print(liste)
teste_sortierung(liste)
print(teste_sortierung(liste))
selectionsort(liste)
print(liste)
teste_sortierung(liste)
print(teste_sortierung(liste))