[Data_Structure] Vector

먹보·2023년 3월 8일
0

✍ Vector란

동적으로 요소를 할당할 수 있는 동적 배열로 일반 배열과는 다르게 요소들이 삽입되거나 제거 될 때 크기를 동적으로 바꿀 수 있습니다.

자바스크립트 내에서는 벡터라는 자료 구조가 내장되어 있지 않다.

✍ Vector의 특징

  1. 동적 리사이징 : 위에서도 언급하였지만 새로운 요소가 추가되거나 제거 될 때 벡터는 자동으로 리사이징을 한다.

  2. 근접 메모리 할당 : 일반적인 배열처럼, 벡터는 각 각의 요소들에게 효율적으로 접근 할 수 있도록 근접 메모리 할당 방식을 택한다.

  3. 랜덤 접근 : 전체 요소를 순회하지 않아도 인덱스가 존재하기에 특정 요소에 바로 접근 할 수 있다.

  4. 효율적인 삽입 및 제거 : 양 끝에 데이터를 삽입 또는 제거하는 방법은 간단하다.

  5. 배열처럼 순회가 가능하다.

  6. 솔트 알고리즘이 적용 가능하다.

✍ Vector의 시간 복잡도

  • 접근 : O(1)
  • 삽입 : O(n) [처음과 끝은 O(1)]
  • 삭제 : O(n) [처음과 끝은 O(1)]
  • 리사이징 : O(n)
profile
🍖먹은 만큼 성장하는 개발자👩‍💻

0개의 댓글