연관 컨테이너(2)
-
C++ 초급 - 11. 표준 라이브러리(STL) (3 - std::set, std::unordered_set (중복 없는 집합 컨테이너))
📌 11.3 std::set, std::unordered_set (중복 없는 집합 컨테이너)C++에서는 중복 없는 요소를 저장하고 관리할 수 있는 컨테이너로 std::set (정렬된 집합)과 std::unordered_set (해시 기반 집합)을 제공한다.각각 이진 검색 트리와 해시 테이블을 기반으로 동작하며, 사용 목적과 성능 차이가 존재한다.📌 1. std::set (정렬된 중복 없는 요소 저장)🔹 (1) std::set이란?중복을 허용하지 않는 정렬된 집합 컨테이너.이진 검색 트리(Red-Black Tree)를 기반으로 동작.시간 복잡도: 삽입, 삭제, 탐색 연산이 O(log N).자동 정렬된 상태로 요소를 유지.💡 기본 문법#include std::set mySet; // 정수형 집합 선..
2025.02.22 -
C++ 초급 - 11. 표준 라이브러리(STL) (2 - std::map, std::unordered_map (연관 컨테이너))
📌 11.2 std::map, std::unordered_map (연관 컨테이너)C++에서는 연관 컨테이너(Associative Container)를 사용하여 키-값 쌍을 저장하고 효율적으로 검색할 수 있다.대표적인 연관 컨테이너로 std::map과 std::unordered_map이 있으며, 각각 이진 검색 트리 기반(정렬 저장)과 해시 기반(빠른 검색)의 차이가 있다.📌 1. std::map (정렬된 키-값 쌍 저장)🔹 (1) std::map이란?키(Key)에 대해 자동으로 정렬되는 연관 컨테이너.내부적으로 이진 검색 트리(Red-Black Tree)를 사용하여 데이터를 저장.시간 복잡도: 삽입, 삭제, 검색 연산이 O(log N).중복된 키를 허용하지 않음 (std::multimap은 중복 허..
2025.02.22