C++
-
STL : vector & iteratorC++ 2020. 7. 15. 02:40
vector 는 배열과 비슷하다고 보면 된다. 배열처럼 객체들을 순차적으로 보관하는 시퀀스 컨테이너(sequence container)에 해당이 된다. 벡터는 가변길이 배열이라고도 할 수 있으며, 메모리상에서 순차적으로 저장되어 있고, 이에 따라 임의 위치에 있는 원소에 접근하는것에 용이함. 맨뒤에 원소를 추가하거나 제거하는것은 O(1) 의 시간복잡도를 가지나, 임의의 위치에 원소를 추가하거나 제거하는 것은 O(n)으로 느리다. 이유는 어떤 자리에 새로운 원소를 추가하거나 뺄 경우 그 뒤에 오는 원소들을 한칸씩 이동시켜줘야하기에, n번의 복사가 필요하기 때문이다. (사용) - 임의 원소에 접근하는 것은 [ ], at 함수를 이용하여 접근 가능 - 맨뒤에 원소를 추가하거나 제거하기 위해선 push_back..