¿Cuál es la complejidad de la función de base de registro ?¿Cuál es la complejidad de la función de registro?
Respuesta
Esto realmente depende del dominio de qué valores desea calcular un logaritmo.
Para duplicados IEEE, muchos procesadores pueden tomar logaritmos en una sola instrucción de ensamblaje; x86 tiene las instrucciones FYL2X y FYL2XP1, por ejemplo. Aunque típicamente instrucciones como éstas sólo tomarán el logaritmo de alguna base fija, pueden ser utilizadas para tomar logaritmos en bases arbitrarias mediante el hecho de que
registro un b = log c b/log c a
simplemente tomando dos logaritmos y encontrando su cociente.
Para enteros generales (de precisión arbitraria), puede usar la cuadratura repetida combinada con una búsqueda binaria para tomar logaritmos usando solo operaciones aritméticas O (log log n) (cada vez que cuadra un número duplica el exponente, lo que significa solo puede cuadrar el número log log n veces antes de exceder su valor y hacer una búsqueda binaria). Usando some cute tricks with Fibonacci numbers, puede hacer esto solo en el espacio O (log n). Si está calculando el binary logarithm, existen algunos trucos divertidos que puede usar con los cambios de bits para calcular el valor en menos tiempo (aunque la complejidad asintótica es la misma).
Para números reales arbitrarios, la lógica es más difícil. Puede usar el método de Newton o la serie de Taylor para calcular los logaritmos con una precisión determinada, aunque confieso que no estoy familiarizado con los métodos para hacerlo. Sin embargo, rara vez necesita hacer esto porque la mayoría de los números reales son IEEE dobles y hay mejores algoritmos (o incluso instrucciones de hardware) en ese caso.
Espero que esto ayude!
Para enteros a menudo también hay una instrucción (o una secuencia corta, para hacer 'CTZ (x & (x - 1)) 'o' wordsize - LZC (x) ') - pero AFAIK no ayuda con la complejidad del tiempo (solo la velocidad real) – harold
@ harold- Es cierto, aunque eso solo funciona para logaritmos binarios . – templatetypedef
@templatetypedef Que puedes multiplicar por un factor constante para obtener logaritmos en cualquier otra base, como acabas de demostrar. :) –
- 1. ¿Cuál es la complejidad de OrderedDictionary?
- 2. ¿Cuál es la complejidad de tiempo de la función de conteo en clojure?
- 3. ¿Cuál es la complejidad temporal de la iteración TreeSet?
- 4. ¿Cuál es la complejidad de la expresión regular?
- 5. ¿Cuál es la complejidad de estos métodos de diccionario?
- 6. ¿Cuál es la complejidad de tiempo de HTML DOM búsquedas
- 7. ¿Cuál es la complejidad de tiempo de LinkedList.getLast() en Java?
- 8. ¿Cuál es la complejidad de tiempo de HashMap.containsKey() en java?
- 9. ¿Cuál es la complejidad de concatenación de cuerdas balanceadas?
- 10. ¿Cuál es la complejidad de tiempo de .NET list.sort()
- 11. ¿Cuál es la complejidad del tiempo de cruce de árboles?
- 12. ¿Cuál es la complejidad de set_intersection en C++?
- 13. ¿Cuál es la complejidad de tiempo del método java.util.Collections.sort()?
- 14. Complejidad algorítmica de la función PHP strlen()
- 15. ¿Cuál es la complejidad temporal de esta función en el esquema?
- 16. ¿Cuál es la complejidad del tiempo de ejecución de las funciones de la lista de python?
- 17. ¿Qué es la Complejidad ciclomática?
- 18. Cuál es la diferencia entre la función() {}() y la función() {}()
- 19. ¿Cuál es el __proto__ de la función?
- 20. ¿Cuál es la función de SharePoint más buscada?
- 21. ¿Cuál es la necesidad de la función de javascript getUTCFullYear()?
- 22. ¿Cuál es el coste/complejidad de una llamada de función String.indexOf()
- 23. Análisis de la complejidad de la imagen
- 24. ¿Cuál es la complejidad del tiempo para hacer estallar elementos de la lista en Python?
- 25. Diferencia entre "complejidad" métrico y "complejidad/método de la" métrica
- 26. ¿cuál es la ventaja de la función estática?
- 27. ¿Cuál es la alternativa de la función eval?
- 28. ¿Cuál es la mejor herramienta para analizar archivos de registro?
- 29. ¿Cuál es la semántica de una función miembro miembro?
- 30. ¿Cuál es la diferencia entre la plantilla de función y la función de plantilla?
¿Es esta tarea? –
¿No dependería eso del algoritmo utilizado? La tabla de búsqueda es O (1) por ejemplo. – Thilo
@Tony: [No] (http://math.stackexchange.com/questions/61759/project-euler-problem-25) –