Como el título pregunta, me pregunto si el método de tamaño() en la clase LinkedList toma O (1) tiempo amortizado u O (n) tiempo.¿Cuál es la complejidad de tiempo de una llamada a size() en LinkedList en Java?
Respuesta
Es O (1). Puede google para el código fuente y se llega a tales:
De http://www.docjar.com/html/api/java/util/LinkedList.java.html
Todas las clases de colección que he mirado en la tienda de un tamaño como una variable y no recorrer todo para conseguirlo .
ctrl-clic en NetBeans lo encontrará aún más rápido que google;) – Superole
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;
}
¿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
La implementación ha sido la misma desde 1.2 cuando se introdujo LinkedList, por lo que siempre será O (1) –
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
- 1. ¿Cuál es la complejidad de tiempo de LinkedList.getLast() en Java?
- 2. ¿Cuál es la complejidad de tiempo de HashMap.containsKey() en java?
- 3. ¿Cuál es la complejidad de tiempo de HTML DOM búsquedas
- 4. ¿Cuál es la complejidad del tiempo de cruce de árboles?
- 5. ¿Cuál es la complejidad de tiempo de .NET list.sort()
- 6. ¿Cuál es la complejidad de tiempo del método java.util.Collections.sort()?
- 7. Complejidad del tiempo del conjunto en Java
- 8. Declarar una LinkedList en Java
- 9. ¿Cuál es la complejidad del tiempo de ejecución de una instrucción switch?
- 10. Establecer el tiempo y la complejidad de la velocidad
- 11. ¿Cuál es la complejidad de tiempo de la función de conteo en clojure?
- 12. ¿Cuál es la complejidad de OrderedDictionary?
- 13. ¿Cuál es la complejidad temporal de la iteración TreeSet?
- 14. ) impl clara (en LinkedList de Java
- 15. Complejidad del tiempo para java ArrayList
- 16. ¿Cuál es la complejidad del tiempo de iteración a través de un estándar :: set/std :: map?
- 17. Java LinkedList a matlab array
- 18. ¿Cuál es la complejidad del tiempo para hacer estallar elementos de la lista en Python?
- 19. ¿Cuál es el equivalente LinkedList en marcos iOS?
- 20. Cuál es la complejidad de tiempo de eliminar un nodo en un árbol binario
- 21. ¿Cuál es la complejidad de tiempo de las operaciones ordenadas en TreeSet?
- 22. ¿Cuál es el significado de "()" en una llamada a función?
- 23. Complejidad de tiempo
- 24. ¿Cuál es el coste/complejidad de una llamada de función String.indexOf()
- 25. ¿Cuál es la complejidad de set_intersection en C++?
- 26. "LinkedList no es genérica" error de Java
- 27. ¿Cuál es la complejidad del tiempo de ejecución de las funciones de la lista de python?
- 28. ¿Cuál es la complejidad de concatenación de cuerdas balanceadas?
- 29. Complejidad del tiempo de la tabla hash
- 30. Cola de prioridad eliminar tiempo de complejidad
Nota, para las estructuras concurrentes, el tamaño de la informática puede ser lento, y de todos modos es inútil. –