J'enseigne CS2 ( Java and data structures
), et j'ai du mal à trouver de bons exemples à utiliser lors de l'enseignement des files d'attente. Les deux applications principales pour lesquelles je les utilise sont la multithreaded
transmission de messages (mais la programmation MT est hors de portée pour le cours) et BFS-style algorithms
(et je ne couvrirai les graphiques que plus tard dans le trimestre).
Je veux également éviter les exemples artificiels. La plupart des choses auxquelles je pense, si j'allais réellement les résoudre de manière monothread, j'utiliserais simplement une liste plutôt qu'une file d'attente. J'ai tendance à n'utiliser les files d'attente que lorsque le traitement et la découverte sont entrelacés (par exemple la recherche), ou dans d'autres cas spéciaux comme les tampons à longueur limitée (par exemple, en conservant les N derniers éléments). Dans la mesure du possible, j'essaie d'enseigner à mes élèves de bonnes façons de faire des choses dans de vrais programmes, pas seulement des jouets pour montrer une fonctionnalité.
Des suggestions de bons algorithmes simples ou d'applications de files d'attente que je peux utiliser comme exemples mais qui nécessitent un minimum d'autres connaissances préalables?