자료구조

자료구조

[C++] STL Stack 사용법

0. Stack (스택)이란? 스택(Stack)은 후입선출(Last In First Out)의 형태를 갖고있는 자료구조이다. 나중에 들어간 것이 먼저 나온다는 의미인데 큐(Queue)의 선입선출과 반대라고 보면 된다. 그래프의 깊이 우선 탐색(DFS)에서 사용되고, 재귀적(Recursion) 함수를 호출 할 때도 사용된다. 기본 함수로 push, pop, empty, top, swap 등이 대표적으로 자주 쓰인다. 1. 기본 사용법 1.1 헤더 스택 STL은 헤더를 통해 stack을 include하여 사용할 수 있다. #include stack stk1;// int형 스택 stack stk2;// char형 스택 1.2 멤버 함수 push(data) : stack에 data를 추가한다. pop() : s..

자료구조

[C++] STL Priority_Queue 우선순위 큐 사용법

우선순위 큐를 사용해야 하는 문제가 나올 때 사용법을 자주 검색해왔어서 개인 기록 겸 공부를 위해 정리해 보았다. 특히나 구조체나 클래스의 객체 타입을 우선순위 큐에 저장하거나, 비교 함수를 재정의, 연산자 오버 로딩도 알아보려고 한다. 0. Priority_queue(우선순위 큐) 란? 기본적으로 큐(queue)는 선입선출 FIFO(First In First Out)을 뜻한다. 때문에 우선순위 큐는 일반적인 큐와 비슷한 연산을 갖고있지만 내부 구조는 완전히 다르다. 선입선출인 큐는 pop을 하면 가장 먼저 들어왔던 원소를 반환하지만 우선순위 큐에서는 제일 우선순위가 높은 원소를 반환한다. 우선순위 큐는 들어간 순서에 상관없에 우선순위가 높은 데이터가 먼저 나온다. 우선순위 큐의 속성 모든 항목에는 우선..

우현2
'자료구조' 카테고리의 글 목록