배열인데, 동적할당을 우리가 따로 해주지 않아도 되는 자동으로 비워주고 메모리 에 올려주는 효자 배열이다.
## 벡터의 값을 초기화하며 생성하기 : vector<int> test(n, a)
ㄴ test라는 int형 벡터를 n칸 만들고 그 안의 원소를 a로 초기화
ㄴ 만약 vector<int> test(n)만 하면 값 0을 n개 갖는 벡터가 만들어진다.
## 벡터안에서는 리스트의 형태로 저장되어있다.
ㄴ vector.begin() : 벡터의 데이터가 있는 리스트의 시작 주소를 리턴(첫 번째 값의 위치)
ㄴ vector.end() : 리스트의 끝 주소를 리턴 (마지막 값보다 한칸 뒤 위치를 리턴)
ㄴ iteator사용 가능
- vector<int>::iterator it= vec.begin();
- *(it)이런식으로 해당 이터레이터에 있는 값을 얻어쓸수있다.
- v.insert(이터레이터, 넣을 값)
- v.insert(v.begin()+a, n) : a번째 칸에 n을 넣고 나머지를 한 칸씩 뒤로 밀음
- v.erase(이터레이터) : 해당 위치의 값을 삭제하고 뒤의 값을 한 칸씩 땡김
이터레이터에 대한 자세한 글은 list글을 참조하세요
'알고리즘' 카테고리의 다른 글
unordered map (C++) (0) | 2020.09.08 |
---|---|
소수를 구하는 방법 (0) | 2020.08.21 |
BFS (0) | 2020.05.21 |
cin과 cout 으로 인한 시간초과 잡는 2가지팁 (0) | 2020.04.23 |
[c++ : stl] list (0) | 2020.04.19 |