Memoization
JavaScript 🟡 MidType : Concept
Definition
La memoization est une technique d'optimisation qui met en cache les resultats d'appels de fonction couteux. Si la fonction est appelee avec les memes arguments, le resultat en cache est retourne sans recalcul.
Analogie
Un carnet de notes ou tu ecris les reponses aux questions qu'on t'a deja posees : la prochaine fois, tu lis juste la reponse.
Exemple de code
function memoize(fn) {
const cache = new Map();
return (...args) => {
const key = JSON.stringify(args);
if (!cache.has(key)) cache.set(key, fn(...args));
return cache.get(key);
};
}Cas d'usage
Accelerer des calculs repetes comme Fibonacci recursif ou des transformations de donnees couteuses.