Files
Sortieralgorythmen/Bubblesort.py
T

44 lines
1.8 KiB
Python

# Auf ein Array A mit den Werten 64, 34, 25, 12, 22, 11, 90 soll ein Bubblesort durchgeführt werden.
# Bei jedem Durchlauf soll das Array ausgegeben werden umnd farblich markiert sein welche zwei Werte gerade verglichen werden.
anzahlVergleiche = 0
anzahlTauschungen = 0
Array = [3,2,1,5,4]
print ("Unsortiertes Array A:", Array)
Länge = len(Array)
def Aufgabe1():
anzahlVergleiche = 0
anzahlTauschungen = 0
for i in range(Länge):
for j in range(0, Länge-1):
print(f"Vergleich: Array[{j}] = {Array[j]} und Array[{j+1}] = {Array[j+1]}")
if Array[j] > Array[j+1]:
Array[j], Array[j+1] = Array[j+1], Array[j]
anzahlTauschungen += 1
print(f"Vertauscht: Array[{j}] = {Array[j]} und Array[{j+1}] = {Array[j+1]}")
anzahlVergleiche += 1
print() # Neue Zeile nach jedem Durchlauf
print("Sortiert sieht das Array A so aus:", Array)
print(f"Anzahl der Vergleiche: {anzahlVergleiche}")
print(f"Anzahl der Tauschungen: {anzahlTauschungen}")
def Aufgabe2():
anzahlVergleiche = 0
anzahlTauschungen = 0
for i in range(Länge):
for j in range(0, Länge-i-1):
print(f"Vergleich: Array[{j}] = {Array[j]} und Array[{j+1}] = {Array[j+1]}")
if Array[j] > Array[j+1]:
Array[j], Array[j+1] = Array[j+1], Array[j]
anzahlTauschungen += 1
print(f"Vertauscht: Array[{j}] = {Array[j]} und Array[{j+1}] = {Array[j+1]}")
anzahlVergleiche += 1
print() # Neue Zeile nach jedem Durchlauf
print("Sortiert sieht das Array A so aus:", Array)
print(f"Anzahl der Vergleiche: {anzahlVergleiche}")
print(f"Anzahl der Tauschungen: {anzahlTauschungen}")
Aufgabe2()