Mémoïsation

La mémorisation (ou memoisation) est une technique de programmation informatique visant à optimiser un programme informatique. Les programmes informatiques appellent des fonctions. Chaque fonction calcule un résultat qu'elle renvoie. La mémorisation est simple : avant que la valeur ne soit renvoyée par l'appel de la fonction, elle est stockée dans un tableau (ou tableau associatif). Comme un cache, ce tableau ne pourra stocker qu'un nombre limité de résultats. La fonction peut alors être modifiée pour essayer de rechercher la valeur de l'entrée dans son tableau de recherche. Cette recherche est beaucoup moins coûteuse que de refaire le calcul. C'est aussi comme un cache : le tableau de données sera nettoyé périodiquement, par exemple les valeurs qui n'ont pas été consultées pendant un certain temps sont supprimées.

Bien qu'elle soit liée à la mise en cache, la mémorisation fait référence à un cas spécifique de cette optimisation, la distinguant des formes de mise en cache telles que la mise en mémoire tampon ou le remplacement de pages. Dans le contexte de certains langages de programmation logique, la mémorisation est également connue sous le nom de tabulation ; voir également le tableau de consultation.

Questions et réponses

Q : Qu'est-ce que la mémorisation ?


R : La mémorisation est une technique de programmation informatique qui permet d'optimiser les programmes en stockant les résultats des appels de fonction dans un tableau ou un tableau associatif.

Q : Comment fonctionne la mémorisation ?


R : Avant qu'une valeur ne soit renvoyée à la suite d'un appel de fonction, elle est stockée dans un tableau de consultation. Plus tard, la fonction recherchera la valeur de l'entrée dans la table de recherche au lieu de la recalculer, ce qui est beaucoup moins coûteux.

Q : Quels sont les avantages de la mémorisation ?


R : La mémoïsation peut améliorer les performances d'un programme en réduisant le nombre de calculs nécessaires. Il s'agit également d'une technique d'optimisation simple qui peut être appliquée à de nombreux programmes.

Q : Comment fonctionne la table de recherche ?


R : La table de recherche stocke les valeurs renvoyées par les appels de fonction. Comme un cache, elle a une limite quant au nombre de résultats qu'elle peut stocker et elle est périodiquement nettoyée en supprimant les valeurs qui n'ont pas été consultées depuis un certain temps.

Q : Qu'est-ce qui distingue la mémorisation des autres formes de mise en cache ?


R : La mémorisation est un cas particulier de mise en cache qui se réfère au stockage des résultats des appels de fonction. Elle diffère d'autres formes de mise en cache telles que la mise en mémoire tampon ou le remplacement de pages.

Q : La mémorisation est-elle utilisée dans les langages de programmation logique ?


R : Oui, la mémorisation est également connue sous le nom de tabulation dans certains langages de programmation logique.

Q : Quelle est la relation entre la mémorisation et une table de consultation ?


R : La mémorisation implique l'utilisation d'une table de recherche pour stocker les résultats des appels de fonction. La fonction peut consulter les valeurs de la table au lieu de les recalculer.

AlegsaOnline.com - 2020 / 2023 - License CC3