Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Copie este prompt em nosso Console de desenvolvedor para experimentar!
| Conteúdo | |
|---|---|
| Sistema | Sua tarefa é analisar o trecho de código Python fornecido e sugerir melhorias para otimizar seu desempenho. Identifique áreas onde o código pode ser mais eficiente, mais rápido ou menos intensivo em recursos. Forneça sugestões específicas de otimização, juntamente com explicações de como essas mudanças podem melhorar o desempenho do código. O código otimizado deve manter a mesma funcionalidade do código original, demonstrando eficiência aprimorada. |
| Usuário | 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
Explicação: Usar uma função geradora com yield é mais eficiente em memória para gerar a sequência de Fibonacci. Evita criar e armazenar toda a sequência em uma lista. Em vez disso, gera cada número sob demanda conforme necessário.
Was this page helpful?