Objectif: maîtriser les bases des structures de données non-linéaires arbres et graphes, et quelques algorithmes de référence sur ces structures.
La première partie de l'UE est centrée sur la structure d'arbre. Les arbres binaires sont étudiés : définition, algorithmes de parcours. La notion d'arbre binaire de recherche est développée : construction, parcours (recherche), insertion, suppression, analyse de complexité.
La seconde partie de l'UE aborde la structure de graphe : définition, cas orienté et non-orienté, recherche en profondeur et en largeur, plus courts chemins.
Sur l'ensemble de son contenu, l'UE abordera les aspects théoriques (formalisme, preuves, complexité) aussi bien que les questions d'implémentation. Ces dernières s'appuieront sur les principes de génie logiciel vus en L1 (classes, tests, bonnes pratiques).