Data structure

Two learning objectives for data structures

 * 1) Learning to use the APIs provided by programming languages
 * 2) Implement a data structure on your own