From 46e7d92cb9041697db3a57d866ec1e6d81292af7 Mon Sep 17 00:00:00 2001 From: "lennart.wolfram" Date: Mon, 21 Sep 2026 13:47:16 +0000 Subject: [PATCH] Dateien nach "/" hochladen --- list.py | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ start.py | 15 ++++++++++ 2 files changed, 101 insertions(+) create mode 100644 list.py create mode 100644 start.py diff --git a/list.py b/list.py new file mode 100644 index 0000000..21a4a54 --- /dev/null +++ b/list.py @@ -0,0 +1,86 @@ +class List(): + def __init__(self): + self.head = None + + def last(self): + if self.head == None: + return None + else: + last = self.head + while True: + if last.next() == None: + return last + else: + last = last.next() + + def len(self): + len = 1 + if self.head == None: + return 0 + else: + last = self.head + while True: + if last.next() == None: + return len + else: + last = last.next() + len += 1 + + def add(self, data): #=append() + if self.head == None: + self.head = Knot(data) + else: + last = self.last() + last.add(Knot(data)) + + def remove(self, index): + knotDel = self.findIndex(index) + knotChange = self.findIndex(index - 1) + + knotChange.pointer = knotDel.pointer + knotDel = None + + def change(self, index, data): + knot = self.findIndex(index) + knot.data = data + + def findIndex(self, nr): + try: + index = self.head + for i in range(nr): + index = index.next() + return index + except: + print("Index nicht in Liste") + + def printWhole(self): + if self.head == None: + print(None) + return + + knot = self.head + + while True: + if knot.next() == None: + print(knot.data) + return + else: + print(knot.data) + knot = knot.next() + + def print(self, index): + knot = self.findIndex(index) + print(knot.data) + + +class Knot(): + def __init__(self, data): + self.data = data + self.pointer = None + + def add(self, obj): + if self.pointer == None: + self.pointer = obj + + def next(self): + return self.pointer \ No newline at end of file diff --git a/start.py b/start.py new file mode 100644 index 0000000..2544cb2 --- /dev/null +++ b/start.py @@ -0,0 +1,15 @@ +from list import List + +l = List() +for i in range(10): + l.add(i**2) + +l.change(5, "Hallo") +l.print(5) + +l.remove(5) +l.print(5) + +l.printWhole() + +print(l.len()) \ No newline at end of file