from collections import deque # double-ended queue, this may be helpful # see the docs: https://docs.python.org/3/library/collections.html#collections.deque classes = { 'CPSC 230': {'CPSC 231'}, 'CPSC 231': {'CPSC 350', 'CPSC 330'}, 'CPSC 350': {'CPSC 380', 'CPSC 408', 'CPSC 406'}, 'CPSC 330': {'CPSC 351'}, 'CPSC 351': set(), 'ENGR 101': set(), 'CPSC 380': set(), 'CPSC 406': set(), 'CPSC 408': set() } def topological_sort(adjacency_list: dict[str, set[str]]): # return the sorted ordering return [] print(topological_sort(classes))