// list of edges struct adjacencyList { Node to; int distance; // length of edge Colour colour; // colour of edge Owner owner; // owner of edge struct adjacencyList *nextEdge; }; // GameBoard ADT implementation using adjacency list struct gameBoardNode { int numberOfNodes; struct adjacencyList **nodes; // edges char **label; // label associated with node int *numberOfTokens; // number of tokens at a node short *visited; };