동적 배열(dynamic array)은 프로그래밍에서 크기가 고정되지 않은 배열을 의미한다. 일례로 C++ 표준 템플릿 라이브러리에서는 vector라는 타입이 동적 배열을 지원한다.

여러 개의 값들이 기하학적 확장을 이용하여 동적 배열의 끝에 삽입되어 있다. 회색 셀들은 확장을 위해 예비된 공간을 의미한다. 삽입된 대부분 항목들은 (일정 시간) 빠르지만, 일부는 재할당이 필요하여 느리다. 마지막 배열의 논리적인 크기와 용량이 그림에 나타나 있다.

동적 배열은 동적 할당 배열과는 다르다. 동적 할당 배열은 배열이 할당될 때 크기가 고정되는 배열이지만 동적 배열은 이러한 고정 크기 배열을 백엔드로 사용할 수 있다.[1]

각주 편집