Saltar al contenido

Comparación de modelos

Crecer justo o dejar margen

Compara añadir ocho elementos desde una secuencia vacía, contando solo traslados de elementos existentes.

Crecimiento exacto: reservas 1, 2, 3… posiciones. Las mudanzas trasladan 0 + 1 + 2 + … + 7 = 28 elementos.

Duplicación desde capacidad 1: reservas 1, 2, 4 y 8. Trasladas 0 + 1 + 2 + 4 = 7 elementos. Queda espacio sin usar entre crecimientos.

Este ejemplo empieza en capacidad 1 para aislar la comparación. La figura de enteros puede empezar en capacidad 4. Son dos escenarios distintos, no una discrepancia de la regla.

En la figura, las barras cuentan los elementos trasladados en cada una de las ocho inserciones, con la misma escala.

Traslados por inserción: crecer justo frente a duplicarDos gráficos de barras con la misma escala, para ocho inserciones desde una secuencia vacía. Crecimiento exacto: 0, 1, 2, 3, 4, 5, 6 y 7 elementos trasladados; total 28. Duplicación desde capacidad 1: 0, 1, 2, 0, 4, 0, 0 y 0; total 7. Las barras con borde grueso son inserciones que provocan una mudanza.Crecimiento exactoelementos trasladados en cada inserción0112233445566778inserción número · total 28Duplicación desde capacidad 1elementos trasladados en cada inserción0112230445060708inserción número · total 7
Mismo número de inserciones, misma escala. Borde grueso: inserción que provoca una mudanza.

La segunda estrategia intercambia capacidad libre por menos mudanzas; no elimina el coste de una inserción que provoca crecimiento.

Añades 16 valores a una secuencia vacía, empezando en capacidad 1. Contando solo traslados de elementos existentes, ¿cuántos hace cada estrategia?