728x90

분류 전체보기 42

[자료구조]큐(Queue)

큐의 구조 FIFO: First-In First-Out 큐는 먼저 들어온 데이터가 먼저 나가는 구조이다. 이러한 형태를 선입 선출이라고 한다. 큐는 뒤에서 새로운 데이터가 추가되고 앞에서 데이터가 하나씩 삭제되는 구조를 가지고 있다. 큐에서 삽입이 일어나는 곳을 후단(rear)라 하고 삭제가 일어나는 곳을 전단(front)라고 한다. 큐의 삽입, 삭제 큐로의 삽입 연산은 enqueue연산이라고 하고 삭제 연산은 dequeue연산이라고 한다. enqueue연산은 큐에 요소를 추가하는 연산으로서 큐의 맨 뒤에 새로운 요소를 추가한다. dequeue연산은 큐의 맨 앞에 있는 요소를 꺼내서 외부로 반환한다. 그림 2는 큐에서의 enqueue와 dequeue연산을 보여준다. 큐에서 enqueue(A)를 수행하면 ..

[자료구조]스택(Stack)

스택의 구조 LIFO: Last-In First-Out 스택에서의 입출력은 맨 위에서만 일어나고 스택의 중간에서는 데이터를 삭제할 수 없다. 이러한 입출력 형태를 후입 선출이라고 한다. 스택에서 입출력이 이루어지는 부분을 스택 상단(Stack top)이라 하고 반대쪽인 바닥 부분을 스택 하단(Stack bottom)이라고 한다. 스택에 저장되는 것을 요소(element)라 부른다. 스택에 요소가 하나도 없을 때 그러한 스택을 공백 스택(empty stack)이라고 한다. 스택의 삽입, 삭제 스택의 삽입과 삭제는 모두 스택 상단에서 발생한다. 스택으로의 삽입 연산은 push 연산이라고 하고 삭제 연산은 pop 연산이라고 한다. 그림 2는 스택에서의 push와 pop연산을 보여준다. 공백 스택에서 push(..

728x90