# Adjacency list Imagine 8 nodes with no connections To store this data in an _adjacency list_ we need __n__ items to store them. We'll have 0 __e__dges however so in total our space is (n+e) == (n) # Adjacency matrix space: O(n^2) The convention for notation btw is [x,y] meaning: * _from x to y_ # Breadth first search add neighbors of current to queue go through current's neighbors and add their neighbors to queue add neighbor's neighbors keep going until there are no more neighbors to add go through queue and start popping members out of the queue # Depth first search Here we're going deeper into the neighbors _once we have a starting point_ _available just means that node has a non-visited neighbor_ if available go to a neighbor if no neighbors available visit goto 1 # Kahn Sort # Graph Coloring When figuring out how many colors we need for the graph, we should note the degree of the graph