반응형
    
    
    
  STL의 시퀀스 컨테이너중 하나인 vecotr에 대해 알아보자
Vector
- vector는 동적배열로 구현되어 있다.
 - 각각의 원소들이 메모리 상에서 연속적으로 존재한다.
 - 원소를 참조할 때 iterator를 이용하여 순차적으로 참조할 수 있다.
 - index값으로 바로 참조도 가능하다.
 - Heap 메모리를 쓰지만 개발자가 직접 delete해주지 않아도 사용되지 않으면 알아서 메모리를 해제한다.
 
장점
- 원소들을 임의의 순서로 접근할 수 있다. (선형시간 소요)
 - index값으로 바로 참조 할 수 있다.(상수시간 소요)
 - vector의 끝(push_back)이나 중간(insert)에 새로운 원소를 추가/제거 할 수 있다.(상수시간 소요)
 - 원소에 접근하는것 과 vector의 끝에서 새로운 원소를 삽입/삭제하는것은 deque 나 list에 비해 빠르다.
 
단점
- 컨테이너 중간에 새로운 원소를 삽입하는것은 deque나 list에 비해 느리다.
 - 정적배열 보다 더 많은 메모리 공간을 필요로 한다.
 
Size & Capacity
반응형
    
    
    
  'C++' 카테고리의 다른 글
| [c++] STL Algorithm (0) | 2021.08.18 | 
|---|---|
| [c++] STL Iterator의 종류 (0) | 2021.08.18 | 
| [c++] STL Container의 종류 (0) | 2021.08.18 | 
| [c++] STL 이란? (0) | 2021.08.18 | 
| [c++] 스택(Stack)과 힙(Heap) (0) | 2021.08.16 |