자료구조 한눈에 비교

이름특징C++ 라이브러리
배열가장 기본적. 요소의 나열vector
연결 리스트각 요소를 노드라고 하고, 노드는 다음 노드를 가리키는 포인터를 가짐list
해시 테이블요소를 해시함수를 통해 값을 변경. 검색이 빠름unordered_set
연상 배열정수가 아닌 값을 키로 가지는 배열unordered_map
스택선입후출stack
선입선출. 크기의 무한정 증가를 막기 위해 링버퍼 사용queue
그래프꼭짓점과 변으로 이루어짐x
트리연결이면서 사이클이 없는 그래프x
이진트리를 배열로 구현한 것priority_queue
Union-Find그룹 분할을 관리하기 편하게 구현한 것x

참고자료

문제 해결력을 높이는 알고리즘과 자료 구조