Saltar a contenido

Cuándo usar cada tipo de List

Guía de decisión para elegir entre ArrayList y LinkedList.

Diagrama de decisión

¿Necesitas acceso por índice frecuente?
├── SÍ → ArrayList
└── NO → ¿Insertas/eliminas en medio frecuentemente?
    ├── SÍ → LinkedList
    └── NO → ArrayList (por defecto)

Casos de uso

ArrayList

  • Listas de productos con búsquedas frecuentes
  • Arrays dinámicos de configuración
  • Datos sensoriales secuenciales

LinkedList

  • Historial de navegación (undo/redo)
  • Colas de transacciones
  • Implementación de stacks

Complejidad resumida

Colección Acceso Búsqueda Inserción Eliminación
ArrayList O(1) O(n) O(n) O(n)
LinkedList O(n) O(n) O(1)* O(1)*

*En extremos. O(n) si se requiere búsqueda previa.