Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- class List:
- def __init__(self):
- self.head = None
- def getHead(self):
- return self.head
- def setHead(self, element):
- self.head = element
- def addElement(self, element):
- print("Adding element", element.getValue())
- if self.head is None:
- self.head = element
- print("No head, setting head")
- else:
- print("adding next")
- walker = self.head
- while walker is not None:
- print("Walking, current walker is", walker.getValue())
- if walker.getNext() is None:
- walker.setNext(element)
- break
- else:
- walker = walker.getNext()
- def deleteElement(self,element):
- walker=self.head
- predecessor=None
- succesor=walker.getNext()
- while succesor is not None:
- succesor=succesor.getNext()
- predecessor=walker
- walker=walker.getNext()
- if walker is element:
- predecessor.setNext(succesor)
- print ("wartosc preda",predecessor.getValue())
- walker=None
- break
- def printList(self):
- if self.head is None:
- pass
- walker = self.head
- while walker is not None:
- print(walker.getValue())
- walker = walker.getNext()
- class Node:
- def __init__(self):
- self.next = None
- def setValue(self, value):
- self.value = value
- def getValue(self):
- return self.value
- def setNext(self, nextElement):
- self.next = nextElement
- def getNext(self):
- return self.next
- def main():
- myList = List()
- nodeFive = Node()
- nodeFive.setValue(5)
- nodeFour = Node()
- nodeFour.setValue(4)
- nodeThree = Node()
- nodeThree.setValue(3)
- nodeTwo = Node()
- nodeTwo.setValue(2)
- nodeOne = Node()
- nodeOne.setValue(1)
- myList.addElement(nodeOne)
- myList.addElement(nodeTwo)
- myList.addElement(nodeThree)
- myList.addElement(nodeFour)
- myList.addElement(nodeFive)
- myList.printList()
- myList.deleteElement(nodeThree)
- myList.printList()
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement