This document defines and describes different types of data structures. It begins by defining primitive data structures as basic structures directly operated on by the machine, such as integers and floats, and non-primitive data structures as more sophisticated structures derived from primitive ones, such as lists, stacks, queues, trees and graphs. It then provides examples and descriptions of common non-primitive data structures like arrays, lists, stacks, queues, trees and graphs, highlighting their key characteristics and common operations.