Recorrido narrado
Un recorrido completo
- Estado inicial: bloque A, longitud 4, capacidad 4. Los cuatro valores pertenecen a A.
- Reserva: aparece B con capacidad 8. A todavía conserva los valores.
- Traslado: cada valor pasa al mismo índice de B. Durante la operación existen ambas reservas.
- Publicación: la cabecera pasa a referenciar B; A deja de ser el almacenamiento del vector.
- Liberación: se devuelve A. Una referencia a su dirección antigua ya no sirve para acceder al elemento.
- Inserción: se escribe 42 en B y la longitud pasa a 5.
Recorre los seis pasos de la figura y explica cada cambio con estas seis observaciones. Las identidades de los elementos se conservan aunque sus direcciones puedan cambiar. Al terminar, confirma que recorriste el ejemplo.
Su fila en la tabla de costos
Crecer añade una condición a insertar al final. En la tabla de costos, la fila del array con capacidad que se agota queda así:
| Operación | Costo | Condición |
|---|---|---|
| insertar al final | O(1) | hay capacidad libre (longitud menor que capacidad) |
| insertar al final | O(n) | no hay capacidad: se traslada cada elemento al bloque nuevo |
Recorre las 6 observaciones del ejemplo. Al pasar al siguiente momento, este cuenta como leído.
Paso 1 de 6: Bloque A: cuatro valores, longitud 4 y capacidad 4.
Referencia → A · longitud 4 · capacidad 4
A: 12, 23, 31, 8
B: sin reservar