2025/09/20 4

[C++ STL 시리즈] 6편: unordered_set과 unordered_map 사용법

C++ STL 시리즈 6편: unordered_set과 unordered_map 사용법지난 글에서는 set과 map을 살펴보았습니다. 이번 글에서는 STL의 unordered_set과 unordered_map 컨테이너를 다루겠습니다.이 컨테이너들은 해시(Hash) 기반 자료구조를 사용하여, set과 map보다 검색, 삽입, 삭제 속도가 빠릅니다.특히 데이터 순서가 중요하지 않을 때 효율적입니다.1. unordered_set이란?unordered_set은 중복 없는 원소 집합 을 저장하며, 요소는 정렬되지 않고 해시 테이블에 저장됩니다.따라서 삽입, 삭제, 검색 모두 평균적으로 O(1) 시간에 수행됩니다.순서가 중요하지 않고 빠른 조회가 필요한 경우에 유용합니다. unordered_set 선언과 초기화#i..

c++ 2025.09.20

[C++ STL 시리즈] 5편: set과 map 사용법

C++ STL 시리즈 5편: set과 map 사용법지난 글에서는 STL의 stack과 queue를 살펴보았습니다.이번 글에서는 C++ STL에서 제공하는 **set과 map** 컨테이너를 다루겠습니다.두 컨테이너는 모두 데이터를 **자동 정렬**하며, 중복을 관리할 수 있어 효율적인 데이터 검색과 저장이 가능합니다. 1. set이란?set은 **중복 없는 원소의 집합**을 표현하는 컨테이너입니다.요소는 항상 정렬되어 저장되며, 삽입, 삭제, 검색이 효율적입니다.set은 내부적으로 **이진 검색 트리(Binary Search Tree)**를 사용하기 때문에 O(log n) 시간에 연산이 가능합니다. set 선언과 초기화#include #include using namespace std;int main() ..

c++ 2025.09.20

[C++ STL 시리즈] 4편: stack과 queue 사용법

C++ STL 시리즈 4편: stack과 queue 사용법지난 글에서는 STL의 deque 컨테이너 사용법을 살펴보았습니다.이번 글에서는 STL에서 제공하는 **stack과 queue** 컨테이너를 정리하겠습니다.두 컨테이너 모두 FIFO(First In First Out) 또는 LIFO(Last In First Out) 구조를 구현할 수 있는 자료구조로,자료를 순차적으로 처리할 때 유용합니다. 1. stack이란?stack은 **LIFO(Last In First Out)** 구조입니다.즉, 가장 나중에 추가한 요소가 가장 먼저 삭제됩니다.스택은 프로그램의 함수 호출, 되돌리기(undo) 기능 등에서 사용됩니다. stack 선언과 초기화#include #include using namespace std;..

c++ 2025.09.20

[C++ STL 시리즈] 3편: deque 사용

C++ STL 시리즈 3편: deque 사용법지난 글에서는 STL의 list 컨테이너를 살펴보았습니다.이번 글에서는 STL의 deque(Double Ended Queue) 컨테이너를 다뤄보겠습니다.deque는 vector와 list의 장점을 결합한 자료구조로, 양쪽 끝에서 삽입과 삭제가 모두 빠릅니다. 1. deque란?deque는 양쪽 끝에서 요소를 삽입(push)하거나 삭제(pop)할 수 있는 컨테이너입니다.vector처럼 임의 접근이 가능하며, list처럼 앞뒤 삽입과 삭제가 효율적입니다.따라서 큐(Queue)나 스택(Stack)을 구현할 때 매우 유용합니다. deque 선언과 초기화#include #include using namespace std;int main() { deque dq; ..

c++ 2025.09.20