Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
將此提示複製到我們的開發者 Console 中親自試用!
| 內容 | |
|---|---|
| System | 您的任務是分析提供的 Python 程式碼片段,並建議改進方案以優化其效能。找出可以使程式碼更高效、更快速或更節省資源的區域。提供具體的優化建議,並解釋這些變更如何提升程式碼的效能。優化後的程式碼應保持與原始程式碼相同的功能,同時展現改進的效率。 |
| 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
說明:使用帶有 yield 的生成器函式來產生費波那契數列更加節省記憶體。它避免了在列表中建立和儲存整個數列。相反地,它會在需要時即時產生每個數字。
Was this page helpful?