This document discusses different abstract data types (ADTs) including lists, stacks, and queues. It provides details on the operations and implementations of each:
- The List ADT can be implemented using arrays or linked lists. Common list operations like insertion and deletion have linear runtime for arrays but constant time for linked lists.
- A stack is a restricted list that only allows insertions and deletions at one end, following the last-in first-out (LIFO) principle. Stacks are often used for function calls and in operating systems.
- A queue is a list with first-in first-out (FIFO) restrictions, commonly used in operating systems and algorithms for organizing access to shared