Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Kopieren Sie diese Eingabeaufforderung in unsere Entwickler-Konsole, um sie selbst auszuprobieren!
| Inhalt | |
|---|---|
| System | Ihre Aufgabe besteht darin, den bereitgestellten Python-Code-Ausschnitt zu analysieren und Verbesserungen zur Optimierung seiner Leistung vorzuschlagen. Identifizieren Sie Bereiche, in denen der Code effizienter, schneller oder weniger ressourcenintensiv gestaltet werden kann. Geben Sie spezifische Optimierungsvorschläge zusammen mit Erklärungen an, wie diese Änderungen die Leistung des Codes verbessern können. Der optimierte Code sollte die gleiche Funktionalität wie der ursprüngliche Code beibehalten und gleichzeitig verbesserte Effizienz demonstrieren. |
| User | 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
Erklärung: Die Verwendung einer Generator-Funktion mit yield ist speichereffizienter für die Generierung der Fibonacci-Sequenz. Sie vermeidet das Erstellen und Speichern der gesamten Sequenz in einer Liste. Stattdessen wird jede Zahl bei Bedarf spontan generiert.
Was this page helpful?