avançado
Refatoração de Algoritmo com Programação Dinâmica
Analise e otimize um código recursivo ineficiente transformando-o em uma solução de programação dinâmica.
📝 प्रॉम्ट सामग्री
Atue como um Engenheiro de Software Sênior especializado em performance de algoritmos. Analise o seguinte trecho de código Python que implementa uma função de Fibonacci de forma recursiva ingênua. Identifique exatamente onde está o problema de complexidade de tempo (Big O) e reescreva a função utilizando memoização ou tabulação (programação dinâmica). Apresente o código otimizado, explique a nova complexidade computacional e discuta os trade-offs de memória versus tempo de processamento nesta implementação.