Vector<`ValueType`> | A Vector is an indexed sequence of values similar to an **array**. |

Grid<`ValueType`> | A Grid is an indexed, **two-dimensional array**. |

GridLocation | A GridLocation struct is a **row/col** pair. |

GridLocationRange | A GridLocationRange is a **two-dimensional range** of grid locations. |

Stack<`ValueType`> | A Stack is a linear structure in which values are added and removed only from one end, **LIFO**. |

Queue<`ValueType`> | A Queue is a linear structure in which values are added at one end and removed from the other, **FIFO**. |

PriorityQueue<`ValueType`> | A PriorityQueue is a specialized queue in which values are processed **in order of priority**. |

Map<`KeyType`, `ValueType`> | A Map maintains an ordered association between **keys** and **values**. |

HashMap<`KeyType`, `ValueType`> | A HashMap is a highly efficient and unordered implementation of the Map abstraction. |

Set<`ValueType`> | A Set is an ordered collection of **distinct values**. |

HashSet<`ValueType`> | A HashSet is a highly efficient and unordered implementation of the Set abstraction. |

Lexicon | A Lexicon is a highly efficient implementation of a **word list**. |