← capítulo

Arrays y arrays dinámicos

Memoria contigua → acceso aleatorio O(1). Tamaño fijo → crecer duplicando.

El problema del append

O(1) amortizado

1+2+4++n=2n1=O(n)1 + 2 + 4 + \cdots + n = 2n - 1 = O(n)

El copiado total a lo largo de n appends es lineal → O(n)n=O(1)\frac{O(n)}{n} = O(1) por append.

Trace: 63 copias en 64 appends ≈ una cada uno.

Copias por append: el diente de sierra

Picos en 1, 2, 4, 8, 16, 32 — al doble de distancia cada vez.

Míralo llenarse y duplicarse

Costos

Para llevar

Barato al final y por índice, caro en medio. Eso es el array — y la línea base a la que reacciona toda estructura posterior.