Couvre la mise en œuvre et la vérification de l'encodeur et du décodeur pour les codes sans préfixe, y compris les classes et les types, les lemmas sur les arbres, et le théorème principal.
Explore les arbres de recherche binaires optimaux pour minimiser les coûts de recherche en utilisant la programmation dynamique et les formulations récursives.
Explore les concepts de programmation orientés objet, le polymorphisme, l'héritage et la liaison dynamique en Java, soulignant l'importance d'une comparaison correcte des objets.
Couvre les paradigmes algorithmiques pour les problèmes de graphique dynamique, y compris la connectivité dynamique, la décomposition de l'expansion et le regroupement local, brisant les barrières dans les problèmes de connectivité k-vertex.