Explore la mutation sécuritaire dans la programmation fonctionnelle grâce à une évaluation paresseuse, à des invariants d'objets et à des fonctions de cache efficaces.
Couvre le problème de coupe de la tige et le problème de changement pour optimiser les appels récursifs et trouver le nombre minimum de pièces nécessaires pour un montant d'argent donné.
Explore la programmation dynamique par le calcul des coefficients binomiaux, en mettant l'accent sur l'efficacité et la mémorisation dans la résolution des problèmes.
Introduit la programmation dynamique, en se concentrant sur l'économie de calcul en se souvenant des calculs précédents et en l'appliquant pour résoudre efficacement les problèmes d'optimisation.
Couvre la quantification de la stabilité du clustering et les méthodes permettant d'économiser des calculs coûteux et des diagnostics de prévisibilité.