자료구조 | Singly Linked List | Linked List (tistory.com)
자료구조 | Singly Linked List | Linked List
singly Linked List가 동작하기 위해 필요한 클래스 링크드 리스트는 노드로 구성된다. 노드는 노드 자신의 data와 다른 노드와 연결되는 link로 구성된다. 단방향으로만 연결해주는 리스트 형태를 Singl
tomatolife.tistory.com
Linked Queue
Singly Linked List에 미리 구현해둔 함수 중 몇 개를 가져오면 된다.
- isEmtpy
- add_rear
- pop_front
import random
class Node:
def __init__(self, item):
self.data = item
self.link = None
class SLL:
def __init__(self):
self.head = None
self.rear = None
self.count = 0
def isEmpty(self):
return self.head == None
def addRear(self, node):
tmp = self.rear
self.rear = node
self.rear.link = tmp
if self.count == 0:
self.head = self.rear
self.count += 1
def popFront(self):
tmp = self.head.data
self.head = self.head.link
self.count -= 1
return tmp
def print(self):
tmp = self.head
while True:
if tmp == None:
break
else:
print(tmp.data)
tmp = tmp.link
s = SLL()
for i in range(10):
tmp = Node(i*100)
s.addRear(tmp)
s.reverse()
s.print()
Linked Stack
Singly Linked List에 미리 구현해둔 함수 중 몇 개를 가져오면 된다.
- isEmtpy
- peek_front
- add_front
- pop_front
import random
class Node:
def __init__(self, item):
self.data = item
self.link = None
class SLL:
def __init__(self):
self.head = None
self.rear = None
self.count = 0
def isEmpty(self):
return self.head == None
def addFront(self, node):
tmp = self.head
self.head = node
node.link = tmp
if self.count == 0:
self.rear = self.head
self.count += 1
def popFront(self):
tmp = self.head.data
self.head = self.head.link
self.count -= 1
return tmp
def print(self):
tmp = self.head
while True:
if tmp == None:
break
else:
print(tmp.data)
tmp = tmp.link
s = SLL()
for i in range(10):
tmp = Node(i*100)
s.addFront(tmp)
s.print()
'Computer Science > 자료구조' 카테고리의 다른 글
자료구조 | Sequential Search | Search (0) | 2021.12.29 |
---|---|
자료구조 | Deque Double Ended Queue | Linked List (0) | 2021.12.29 |
자료구조 | Singly Linked List | Linked List (0) | 2021.12.29 |
자료구조 | Maze Problem | linear DS (0) | 2021.12.29 |
자료구조 7강 | Search 탐색 (순차, 이진, 해시, 보간) | 숙명여대 학점교류 (0) | 2021.12.29 |