Dictionary
Abstract data type that permits access to data items by content (key)
Container
Abstract data type that permits storage and retrieval of data items, independent of content (without needing to know anything about them)
Priority Queue
An abstract data type that allows for insertion of data with a key (priority), and retrieval of the item with the highest/lowest key
Heap
Simple data structure to support Priority Queue ops (insert, findMin, extractMin)