Stack 나중에 들어간 데이터가 제일 먼저 나오는 LIFO(Last In First Out) 구조 특정 위치(한쪽 끝)에서만 데이터를 넣거나 뺼 수 있다. Stack 연산의 시간복잡도 데이터를 추가(push) -> O(1) 데이터를 제거(pop) -> O(1) 제일 꼭대기의 데이터를 확인(top) -> O(1) Stack 응용 사례 수식의 괄호 쌍 후위 표기법 DFS Stack 구현 template class Stack { private: int* stack; int size, top; public: Stack(int size) : size(size), top(-1) { stack = new T[size]; } ~Stack() { delete stack; } // 데이터 삽입 bool Push(T da..