스택(Stack) 두 개로 큐(Queue) 구현하기
·
CS 공부/알고리즘
구현방법 큐를 입력할 때에는 하나의 스택의 push()를 통하여 데이터를 넣고, 큐를 추출할 때에는 다른 스택의 pop()를 통하여 선입선출을 만족시키는 방법 Enqueue - 첫번째 스택 stack1에 push를 하여 데이터 저장 Dequeue - 두번째 스택 stack2 이용 a. stack2가 비어있다면 stack1이 비어질 때까지 pop()하여 모든 데이터를 옮겨넣음. 이 결과로 stack1에서 가장 먼저 있었던 데이터는 stack2의 top에 위치하게 됨 b. stack2.pop()을 하면 가장 먼저 있었던 데이터가 가장 먼저 추출됨(FIFO) 코드 작성 class Queue(object): def __init__(self): self.instack=[] self.outstack=[] def e..