Présente des algorithmes en tant que procédures de résolution de problèmes, couvrant la complexité, l'exactitude et la mise en œuvre dans divers langages.
Couvre les bases de la sécurité logicielle, en se concentrant sur la sécurité de la mémoire et les stratégies d'atténuation contre les attaques d'exécution de code.