노트

c++) 컨테이너 종류

tose33 2022. 1. 4. 14:42

https://www.cplusplus.com/reference/stl/

 

Containers - C++ Reference

 

www.cplusplus.com

 

1. 시퀸스 컨테이너 (Sequence container)

- array, vector, deque, forward_list, list 

- 데이터를 선형으로 저장하는 가장 일반적인 컨테이너. 

 

2.  컨테이너 어댑터 Container adaptors 

- stack, queue, priority_queue

- 원소들을 다루기 쉽도록 deque나 list같은 컨테이너에서 일부 기능을 제외시킨 컨테이너다.

  예를들어 stack은 vector 클래스의 일부 인터페이스를 제한.

- iterator를 지원하지 않는다.

 

3. 연관 컨테이너 (Associative container)

- set, multiset, map, multimap 

- 키(key)와 값(value)를 하나의 쌍으로 저장 하는 컨테이너.

- insert되는 원소의 위치를 지정할수 없다.

- 원소에 대한 접근이 빠르다. 

- balanced binary tree, hash table로 구현되어있다.

 

3-1. Unordered associative Container 

- unordered_set, unordered_multiset, unordered_map, unordered_multimap 

- 이 컨테이너들은 연관 컨테이너들이 정렬이 안된 버전이다. 

- 정렬이 안되어있지만, 그냥 연관 컨테이너들보다 더욱 빠른 원소의 검색이 가능하다.