Кіріспе

Элементтерді қосуға және жоюға болатын тізімдік дерек құрылымы. Компьютер ғылымында динамикалық массив, кеңейтілген массив, қайта өлшемделтін массив, динамикалық кесте, өзгертілген массив немесе массив тізімі – элементтерді қосуға немесе жоюға мүмкіндік беретін, кездейсоқ сұранысқа қол жеткізілетін, өзгермелі өлшемді тізімдік дерек құрылымы. Ол көптеген қазіргі заманғы бағдарламалау тілдеріндегі стандартты кітапханалармен жабдықталған. Динамикалық массивтер статикалық массивтердің шектеулерін жояды, олардың белгілі бір сыйымдылығы болады, оны бөліп беру кезінде анықтау қажет. Динамикалық массив – динамикалық түрде бөлінген массив немесе өзгермелі ұзындығы бар массив емес, олардың екеуі де массив бөлінген кезде өлшемі белгіленеді, бірақ динамикалық массив мұндай белгілі өлшемді массивті ішкі құрылым ретінде пайдалана алады.

Тілдік қолдау

C++ std::vector және Rust std::vec::Vec динамикалық массивтердің іске асырылуы болып табылады, сондай-ақ Java API және .NET Framework-пен бірге келген ArrayList кластары да осылай іске асырылған. .NET Framework 2.0 нұсқасымен бірге келген жалпы List<> класы да динамикалық массивтерді пайдаланып іске асырылады. Smalltalk-тың OrderedCollection динамикалық бастапқы және соңғы индексі бар динамикалық массив, сондықтан бірінші элементті жою да O(1) операциясы болып табылады. Python тіліндегі тізім дерек типі – динамикалық массив, оның өсу үлгісі: 0, 4, 8, 16, 24, 32, 40, 52, 64, 76, ... Delphi және D тілдері динамикалық массивтерді тілдің өзегінде іске асырады. Ada тіліндегі Ada.Containers.Vectors жалпы пакеті берілген тип үшін динамикалық массивті іске асыруды қамтамасыз етеді. Perl және Ruby сияқты көптеген сценарийлік тілдер динамикалық массивтерді кіріктірілген бастапқы дерек типі ретінде ұсынады. C үшін динамикалық массивті іске асыруды қамтамасыз ететін бірнеше кросс-платформалық фреймворктер бар, олардың ішінде Core Foundation-дағы CFArray және CFMutableArray, GLib-дағы GArray және GPtrArray. Common Lisp өзгертілетін векторларға қарапайым қолдау көрсетеді, бұл кіріктірілген массив түрін өзгертілетін ретінде конфигурациялауға және толтыру көрсеткіші арқылы енгізу орнын орнатуға мүмкіндік береді.