Modelo por capas
Longitud, capacidad y la regla de crecimiento
Un array dinámico es un array que crece solo. Guarda dos números:
- longitud: cuántos valores tiene;
- capacidad: cuántos caben en el bloque reservado.
Mientras longitud sea menor que capacidad, agregar escribe en la siguiente posición libre: una escritura. Cuando longitud = capacidad, primero crece: reserva un bloque nuevo, copia los valores y libera el viejo.
La decisión importante es la regla de crecimiento: cuánto más grande es el bloque nuevo. Las dos que vas a comparar:
- sumar uno: capacidad nueva = capacidad + 1;
- duplicar: capacidad nueva = 2 × capacidad.
En la figura, un array lleno de capacidad 4 y el bloque nuevo que resulta con cada regla.