크기(Size)
- 정적 배열은 컴파일시 결정된 고정된 크기를 갖고 런타임 중에 변경할 수 없다.
- 동적 배열은 가변 크기를 갖고 런타임 중에 배열 크기를 변경할 수 있다.
접근 시간(Access time)
- 정적/동적 배열 둘 다 O(1)의 시간 복잡도를 갖는다.
삽입 및 삭제 시간
- 정적 배열
- 동적 배열
- 끝 부분에 삽입: O(1)
- 시작 부분에 삽입: O(n)
- 임의 인덱스에 삽입: O(n)
- 끝 부분 삭제: O(1)
- 시작 인덱스에서 삭제: O(n)
- 임의 인덱스에서 삭제: O(n)
용도
- 정적 배열은 데이터 크기를 미리 알고 런타임 중에 변경되지 않고 속도와 메모리 효율성이 중요한 경우에 유용하다.
- 동적 배열은 데이터 크기를 알 수 없거나 런타임 중에 변경될 수 있는 경우에 유용하다.