STL 컨테이너

STL 컨테이너 선택 기준

기본 선택은 `vector`지만, 데이터의 순서 유지, 키 검색, 앞뒤 삽입 같은 요구가 생기면 다른 컨테이너가 필요하다.

Sequence

삽입 순서를 유지하는 선형 구조다. 임의 접근은 vector/deque가 강하다.

vectordequelist

Associative

정렬된 키 기반 검색을 제공한다. 검색, 삽입, 삭제는 보통 O(log N)이다.

setmapmultimap

Unordered

해시 기반으로 평균 O(1) 검색을 노린다. 정렬 순서가 필요 없을 때 유리하다.

unordered_setunordered_map
컨테이너 접근 패턴: 인덱스 접근이 필요한가, 키로 찾아야 하는가, 정렬이 필요한가, 중복을 허용해야 하는가를 순서대로 확인한다.