Skip to content

Instantly share code, notes, and snippets.

@pupba
Created January 11, 2023 09:56
Show Gist options
  • Save pupba/a51d23e216bc6c72e142b2cee7bc1a9d to your computer and use it in GitHub Desktop.
Save pupba/a51d23e216bc6c72e142b2cee7bc1a9d to your computer and use it in GitHub Desktop.
LinkedList
class Node :
def __init__(self,data,nxt=None):
self.__nxt = nxt
self.__data = data
def getData(self):
return self.__data
def getNext(self):
return self.__nxt
def setNext(self,nxt):
self.__nxt = nxt
class Llist :
def __init__(self):
dummy = Node(None)
self.head = dummy # 시작점
self.end = dummy # 제일 끝의 노드
def add(self,node):
if self.head.getData() == None:
self.head = node
self.end = node
else :
self.end.setNext(node)
self.end = node
def search(self,item):
pre = None
cur = self.head
while True:
if cur.getData() == item : return pre,cur
if cur.getNext() == None : break
pre = cur
cur = cur.getNext()
return None, None
def delete(self,item):
pre,cur = self.search(item)
pre.setNext(cur.getNext())
del cur
def printAll(self):
cur = self.head
while True:
print(cur.getData(),end='')
if cur.getNext() == None: break
print(' -> ',end='')
cur = cur.getNext()
print()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment