본문 바로가기

Computer Science34

단방향 연결 리스트 구현 class Node: # 단방향 연결 리스트 위한 노드 def __init__(self,key = None): self.key = key self.next = None def __str__(self): return str(self.key) # v = Node() # print(v.key) # key값 출력 # print(v) -> print(v.__str__()) 와 같음 ''' 보통 이렇게 하지 않음 (매번 변수 선언) a = Node(3) b = Node(9) c = Node(-1) a.next = b b.next = c ''' class SinglyLinkedList: def __init__(self): self.head = None self.size = 0 def pushFront(self,key.. 2021. 12. 13.
스택 큐 자료구조 구현 class Stack: def __init__(self): self.items = [] # 데이터 저장을 위한 리스트 준비 def push(self, val): self.items.append(val) def pop(self): try: return self.items.pop() except IndexError: # IndexError가 발생했다면 print("Stack is empty") def top(self): # 맨 위의 값을 출력 try: return self.items[-1] except IndexError: print("Stack is empty") def __len__(self): # len()로 호출하면 stack의 item 수 반환 return len(self.items) class Q.. 2021. 12. 12.
자료구조와 알고리즘 자료구조와 알고리즘에 대해 알아보자 그 동안 자료구조와 알고리즘을 막연하게 생각해왔는데 본질적으로 알아 봐야겠다 https://www.youtube.com/watch?v=M2mcJvmYpWY 한국외대 신창수 교수님의 자료를 보고 정리해볼까 한다. 자료구조란 어떤 data를 저장하기 위한 구조인데 이는 저장공간(memory) + 연산(읽기, 쓰기, 삽입, 삭제, 탐색) 의 구조를 가지고 있다. 이런 자료구조를 활용해 어떤 입력이 들어왔을 때 이를 유한한 횟수의 연산들을 통해 정답을 출력하는 논리적인 절차를 알고리즘이다. 자료구조의 예: 1. 변수(variable) a = 5 (쓰기연산) print(a) (읽기연산) 변수에는 값이 하나만 들어가기 때문에 삽입, 삭제, 탐색은 의미가 없다 python 내부에서.. 2021. 12. 8.
python 알고리즘 정리 보호되어 있는 글 입니다. 2021. 11. 27.