Computer Science/자료 구조

[ 선형 자료구조 ] Vector

OnnJE 2023. 1. 9. 11:50
반응형

1. Vector

1) 개념

  컴퓨터 과학에서 벡터는 배열과 유사하되 동적으로 크기를 조정할 수 있는 자료구조이며, 배열처럼 연속된 메모리 를 바탕으로 구성된다. 백터는 데이터를 연속되게 쌓으며 삭제/삽입 등의 연산시 대상 인덱스 이후의 요소들의 위치를 조정한다.

 

2) 장점

  1. 쉽게 크기 조정이 가능하다.
  2. idx를 통해 빠르게 각 요소에 접근가능하며 O(n)의 시간 복잡도를 갖는다.
  3. 끝 요소의 경우 삽입/삭제 연산이 빠르다. O(n)의 시간복잡도를 갖는다.
  4. 요소 저장을 위한 메모리만 사용하기 때문에 배열보다 메모리 측면에서 효율적이다.

 

3) 단점

  1. 요소들의 위치 조정이 필요하기 때문에 끝 이외의 부분에서의 삽입/삽제 연산은 배열보다 느리다.
  2. 각 요소의 크기, 저장된 요소의 개수 등의 정보를 포함하기 때문에 배열보다 많은 메모리를 필요로한다.

 

4) 사용 예시

  1. 큰 데이터를 저장할 경우
  2. 끝 부분에서 데이터 삽입/삭제 연산이 많이 이루어질 경우
  3. 데이터의 크기가 가변적인 경우
반응형