2009-05-14 11 views

Respuesta

12

O (1) como lo habría encontrado tenía mirabas el código fuente ...

De LinkedList:

private transient int size = 0; 

...

/** 
* Returns the number of elements in this list. 
* 
* @return the number of elements in this list 
*/ 
public int size() { 
    return size; 
} 
+4

¿Y si no está usando la implementación de Sun en absoluto? http://en.wikipedia.org/wiki/Java_Class_Library#Alternative_implementations Creo que su pregunta es si se garantiza que es O (1), en lugar de si es O (1) en cualquier implementación/versión específica. – jalf

+1

La implementación ha sido la misma desde 1.2 cuando se introdujo LinkedList, por lo que siempre será O (1) –

+5

Esto es de Java 1.6. Esto no depende de la VM, pero (en teoría) podría ser diferente en versiones anteriores de la biblioteca estándar. Compruebe la fuente de su versión si quiere estar 100% seguro, pero ningún desarrollador en su sano juicio calcularía el tamaño bajo demanda para algo como esto, donde todo está en la memoria y puede contarlo a medida que se crea la estructura. – Kris

Cuestiones relacionadas