목록C,C++ 기초 및 자료구조 (27)
rueki
C++에서 Queue 역시 선언해서 사용할 수가 있다. - Push #include #include using namespace std; int main() { queue myqueue; int myint; cout myint; myqueue.push(myint); } while (myint); cout
C++에서는 STL을 통한 스택을 쉽게 사용할 수가 있다. stack 안에 포함된 멤버 함수로는 아래와 같다. emplace empty pop push size swap top - Size : 스택의 사이즈를 반환받는 함수 #include #include using namespace std; int main() { stack myints; cout

큐 역시 스택과 마찬가지로 데이터를 일시적으로 쌓아 놓은 자료구조이다. 스택과의 다른 점이라함은, 선입선출 (First in, First out) 형태를 지닌다는 점이다. 큐에 데이터를 넣는 작업을 인큐(enqueue)라 하고, 데이터를 꺼내는 작업을 디큐(dequeue)라고 한다. 데이터를 꺼내는 쪽을 프론트(Front), 넣는 쪽을 리어(rear)라고 한다. 큐 역시 배열로 구현이 가능하다. 19 19 22 22 22 37 37 37 53 53 53 24 24 1) que[0] ~ que[3] 까지 데이터가 저장되어 있다. 2) 24를 인큐한다. que[3]의 데이터 다음인 que[4] 에 24를 저장. 이 때 시간 복잡도는 O(1) 3) 19를 디큐한다. que[0]에 저장된 19를 꺼낸 다음, 모..

스택은 데이터를 일시적으로 저장하기 위한 자료구조이다. LIFO(Last In, Fisrt Out) , 후입선출의 구조를 가지는데, 이는 가장 나중에 넣은 데이터를 가장 먼저 끝낸다는 의미이다. Push : 스택에 데이터를 넣는 작업 Pop : 스택에서 데이터를 꺼내는 작업 스택을 구현해보자. 먼저 헤더 선언을 해서 스택의 기능에 대해 간략하게 알아보자. #ifndef __intStack #define __intStack typedef struct { int max; // 스택 용량 int ptr; // 스택 포인터 int* stk; // 스택 첫 요소 포인터 }intStack; //스택 초기화 int Initialize(intStack* s, int max); //스택에 데이터 푸시 int Push(i..