Circular Linked List code
Wed Apr 27 2022 07:21:08 GMT+0000 (Coordinated Universal Time)
Saved by
@abdalrahmansh
#python
#datastructer
class Node:
def __init__(self, data):
self.data = data
self.next = None
class CircularLinkedList:
def __init__(self):
self.last = None
def addToEmpty(self, data):
if self.last != None:
return self.last
newNode = Node(data)
self.last = newNode
self.last.next = self.last
return self.last
def addFront(self, data):
if self.last == None:
return self.addToEmpty(data)
newNode = Node(data)
newNode.next = self.last.next
self.last.next = newNode
return self.last
def addEnd(self, data):
if self.last == None:
return self.addToEmpty(data)
newNode = Node(data)
newNode.next = self.last.next
self.last.next = newNode
self.last = newNode
return self.last
def addAfter(self, data, item):
if self.last == None:
return None
newNode = Node(data)
p = self.last.next
while p:
if p.data == item:
newNode.next = p.next
p.next = newNode
if p == self.last:
self.last = newNode
return self.last
else:
return self.last
p = p.next
if p == self.last.next:
print(item, "The given node is not present in the list")
break
def deleteNode(self, last, key):
if last == None:
return
content_copyCOPY
Comments