Inhaltsverzeichnis
A continuación se muestra un ejemplo de la salida generada por este programa: Como se puede ver a partir de esto, en esta corrida particular, calculando el factorial de 150 000 tomó 5 s, mientras que el factorial de 80 000 tomó poco más de 1 1/4 s, etc. En este caso particular, hemos decidido volver a ejecutar estos cálculos para que han calculado el factorial de 150.000, 80.000 y 120.000 al menos dos veces. La idea de un caché es que se puede usar para guardar cálculos anteriores y reutilizar aquellos, si corresponde, en lugar de tener que realizar el mismo cálculo varias veces. El uso de un caché puede mejorar en gran medida el rendimiento de los sistemas en los que estos se repiten los cálculos. Hay muchas bibliotecas comerciales de almacenamiento en caché disponibles para una amplia variedad de lenguajes incluyendo Python. Sin embargo, en su esencia todos son un tanto dic- cionario como; es decir, hay una tecla que suele ser una combinación de la operación ación invocada y los valores de los parámetros utilizados. A su vez, el elemento de valor es el resultado del calculo Estos cachés suelen tener también políticas de desalojo para que no se conviertan en demasiado grande; estas políticas de desalojo generalmente se pueden especificar para que coincidan con el forma en que se utiliza la memoria caché. Una política de desalojo común es la Menos recientemente Política usada (o LRU). Al usar esta política una vez que el tamaño de la memoria caché alcanza un límite predeterminado, el valor Usado menos recientemente se desaloja, etc. Para este ejercicio, debe implementar un mecanismo de almacenamiento en caché simple utilizando un diccionario (pero sin política de desalojo). El caché debe usar el parámetro pasado a la función factorial() como la clave y devolver el valor almacenado si hay uno presente. La lógica para esto suele ser: llamando factorial con 150000 regresado de factorial tardo 5 segundos Ninguno llamando factorial con 80000 devuelto de factorial tardo 1 segundo Ninguno llamando factorial con 120000 regresado de factorial tardo 3 segundos Ninguno llamando factorial con 150000 regresado de factorial tardo 5 segundos Ninguno llamando factorial con 120000 regresado de factorial tardo 3 segundos Ninguno llamando factorial con 80000 devuelto de factorial tardo 1 segundo Ninguno 33.7 Ejercicios 399
popular post
Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza
WeiterlesenTemas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza
Weiterlesen• https://docs.python.org/3/ El sitio principal de documentación de Python 3. Contiene tutoriales, referencias de bibliotecas, guías de configuración e instalación, así como Python cómo-tos • https://docs.
Weiterlesen