C++ STL vector

HYOoMi·2021년 3월 6일
0

C++

목록 보기
1/1

vector란?

  • 순차 컨테이너(sequence container) 자료를 순서대로 저장하는 구조
  • 배열 기반
  • 맨 뒤쪽에서 삽입, 삭제 일어남

vector 생성

#include <vector>
/*비어있는 vector v 생성*/
vector<int> v;
/*기본값(0)으로 초기화 된 N개의 원소를 가지는 vector v 생성*/
vector<int> v(N);
/*k로 초기화 된 N개의 원소를 가지는 vector v 생성*/
vector<int> v(N, k);
/*vector v를 복사하여 vector v2 생성*/
vector<int> v2(v);
/*k로 초기화 된 N*M개의 원소를 가지는 이차원 vector v 생성*/
vector<vector<int>> v(N, vector<int>(M, k));
/*이차원 vector v선언 후 k로 초기화 된 M개의 일차원 vector를 N개 할당 */
vector<vector<int>> v; 
v.assign(N, vector<int>(M,k));

추가

v.push_back(data);

v.insert(v.begin() + index, data);

삭제

v.pop_back();

vector의 last data 삭제

v.erase(v.begin() + index);

vector의 index 위치에 있는 data 삭제

v.erase(v.begin() + s, v.begin() + e);

vector의 [s, e) 원소를 삭제. 즉, s ~ e-1번째 index 위치에 있는 data 삭제

unique(v.begin(), v.end());

vector의 데이터 중에서 중복 데이터를 쓰레기 값으로 취급하고 vector 맨 뒤로 보낸다. 반환 값은 뒤로 보내진 첫번째 쓰레기 값을 point한다.

iterator

vector::iterator name;

반복자 변수 선언.

출처
+> https://blockdmask.tistory.com/70
+> https://blog.naver.com/withham1/220958337986
+>https://ssffwert.tistory.com/47

0개의 댓글