목록Programming/STL (14)
Nagie's DevStory
std::stable_sort는 C++ 표준 라이브러리(STL)에서 제공하는 정렬을 수행하는 함수이며, 헤더에 정의되어 있다. std::sort와 사용법은 동일하지만, std::stable_sort는 안정성을 유지하면서 정렬하기에 요소의 상대적인 순서가 중요하다면 std::sort 대신 std::stable_sort를 사용해야 한다. 다음은 std::stable_sort의 사용 예시이다. #include #include #include int main() { std::vector nums = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5}; std::stable_sort(nums.begin(), nums.end()); for (const auto& e : nums) { std::cout
std::sort는 C++ 표준 라이브러리(STL)에서 제공하는 정렬을 수행하는 함수이며, 헤더에 정의되어 있다. 기본적으로 오름차순 정렬을 하며, 퀵 정렬(Quick Sort)이나 병합 정렬(Merge Sort)과 같은 알고리즘으로 구현되어 있다. 기본적인 사용 방법은 다음과 같다. #include #include int main() { int arr[] = { 4, 2, 5, 1, 3 }; std::sort(arr, arr + 5); for (const auto& e : arr) { std::cout
std::deque은 C++ 표준 라이브러리(STL)에서 제공하는 양방향 큐(Double-Ended-Queue)를 구현한 클래스다. 덱은 큐와 스택을 섞어놓은 듯한 동작 방식을 가지고 있으며 양쪽 끝에서 데이터를 추가하거나 제거할 수 있는 자료구조로 std::deque 역시 동일한 동작을 하며 다음은 std::deque의 주요 특징과 사용법이다. 특징 1. 표준 라이브러리의 일부 : std::deque는 C++ STL의 일부이며 헤더에 정의되어 있다. 2. 양방향 큐 : std::deque는 큐와 스택의 두 가지 동작을 모두 제공하며 양쪽 끝에서 데이터를 추가하거나 제거할 수 있어 양방향 데이터 접근을 제공한다. 3. 동적 배열 구조 : std::deque는 동적 배열 구조로 구현되어 있어 큐의 크기를 ..
std::queue는 C++ 표준 라이브러리(STL)에서 제공하는 큐(Queue) 자료구조를 구현한 클래스다. 큐는 선입선출(FIFO, First-In-First-Out) 방식으로 데이터를 관리하는 자료구조로, std::queue 역시 이러한 동작을 한다. 다음은 std::queue의 주요 특징과 사용법이다. 특징 1. 표준 라이브러리의 일부 : std::queue는 C++ STL의 일부이며 헤더에 정의되어 있다. 2. 큐의 기능 제공 : std::queue는 큐 자료구조의 기능을 제공한다. 즉 데이터를 큐에 추가하는(push) 동작과 큐에서 데이터를 제거하는(pop) 동작을 지원한다. 3. 컨테이너 어댑터 : std::queue는 다른 시퀀스 컨테이너를 내부적으로 사용해 큐를 구현한다. 따라서 큐의 특..
std::stack은 C++ 표준 라이브러리(STL)에서 제공하는 스택 자료구조를 구현한 클래스다. 스택은 후입선출 (LIFO, Last-In-First-Out) 방식으로 데이터를 관리하는 자료구조로 std::stack 역시 이러한 동작을 한다. 다음은 std::stack의 주요 특징과 사용법이다. 특징 1. 표준 라이브러리의 일부 : std::stack은 C++ STL의 일부이며 헤더에 정의되어 있다. 2. 스택의 기능 제공 : std::stack은 스택 자료구조의 기능을 제공한다. 즉 데이터를 스택에 넣는(push) 동작과 스택에서 데이터를 빼내는(pop) 동작을 지원한다. 3. 컨테이너 어댑터 : std::stack은 다른 시퀀스 컨테이너를 내부적으로 사용해 스택을 구현한다. 따라서 스택의 특성을 ..