Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
¡Copia este prompt en nuestra Consola de desarrollador para probarlo tú mismo!
| Contenido | |
|---|---|
| Sistema | Tu tarea es analizar el fragmento de código Python proporcionado y sugerir mejoras para optimizar su rendimiento. Identifica áreas donde el código puede hacerse más eficiente, más rápido o menos intensivo en recursos. Proporciona sugerencias específicas para la optimización, junto con explicaciones de cómo estos cambios pueden mejorar el rendimiento del código. El código optimizado debe mantener la misma funcionalidad que el código original mientras demuestra una eficiencia mejorada. |
| Usuario | def fibonacci(n): if n <= 0: return [] elif n == 1: return [0] elif n == 2: return [0, 1] else: fib = [0, 1] for i in range(2, n): fib.append(fib[i-1] + fib[i-2]) return fib |
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
Explicación: Usar una función generadora con yield es más eficiente en memoria para generar la secuencia de Fibonacci. Evita crear y almacenar toda la secuencia en una lista. En su lugar, genera cada número sobre la marcha según sea necesario.