Stacks, queues, and deques are common linear data structures. A stack follows LIFO order, with items added and removed from the same end. A queue follows FIFO order, with items added to one end and removed from the other. A deque allows additions and removals from both ends. These structures can be implemented using either arrays or linked lists. Array implementations require care to avoid overflow and underflow, while linked list versions have efficient addition and removal at both ends.