From 7babdc089cda949873c0051d84c4eb50bf958828 Mon Sep 17 00:00:00 2001 From: alstergym Date: Fri, 2 Oct 2026 09:10:47 +0200 Subject: [PATCH] 02.10.26 --- verketteteliste/liste.py | 26 ++++++++++++++++++++++++-- verketteteliste/starten.py | 6 ++++++ 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/verketteteliste/liste.py b/verketteteliste/liste.py index 7e25335..133b0a5 100644 --- a/verketteteliste/liste.py +++ b/verketteteliste/liste.py @@ -8,9 +8,9 @@ class Liste: #Klasse wird ers aktueller_knoten = self.head #"aktueller_knoten" wird auf den Wert von "self.head" gesetzt while aktueller_knoten is not None: #Unter der Bedingung, dass "aktueller_knoten" einen Wert hat... - print(aktueller_knoten.daten) #...wird das Attribut "daten" von "aktueller_knoten" ausgegeben + print(aktueller_knoten.data) #...wird das Attribut "daten" von "aktueller_knoten" ausgegeben - aktueller_knoten = aktueller_knoten.nachfolger #daraufhin wird der nachfolger von "aktueller_knoten" das neue "aktueller_knoten" + aktueller_knoten = aktueller_knoten.next #daraufhin wird der nachfolger von "aktueller_knoten" das neue "aktueller_knoten" def append(self, daten): neuer_knoten = Knoten(daten) @@ -23,4 +23,26 @@ class Liste: #Klasse wird ers letzter_knoten.next = neuer_knoten return letzter_knoten = letzter_knoten.next + + def loeschen(self,suchwert): #erstes Element mit gesuchtem Wert wird gelöscht + aktueller_knoten = self.head + vorheriger_knoten = None + + if aktueller_knoten is None: + print("Liste ist leer löschen nicht möglich") + return + + if aktueller_knoten.daten == suchwert: + self.head = aktueller_knoten.nachfolger + return + + while aktueller_knoten is not None and aktueller_knoten.daten != suchwert: + vorheriger_knoten = aktueller_knoten # merken zum Löschen + aktueller_knoten = aktueller_knoten.nachfolger + + if aktueller_knoten is None: + print(f"Wert {suchwert} wurde nicht gefunden") + return + + vorheriger_knoten.nachfolger = aktueller_knoten.nachfolger \ No newline at end of file diff --git a/verketteteliste/starten.py b/verketteteliste/starten.py index efb7c66..c74da10 100644 --- a/verketteteliste/starten.py +++ b/verketteteliste/starten.py @@ -1,7 +1,13 @@ from knoten import Knoten +from liste import Liste knoten1 = Knoten(3) knoten2 = Knoten(5) knoten1.next = knoten2 print(knoten1.next.data) print(knoten2.data) + +liste1 = Liste() +liste1.append(37) +liste1.append(44) +liste1.ausgebenListe() \ No newline at end of file