**Chapter 2. Arrays**

Explanation of arrays and their manipulation. Array .sort() works lexigraphically. reduce(), map(), filter() functions.

**Chapter 3. Lists**

Enumerating a list. Nothing really interesting.

**Chapter 4. Stacks**

A last-in first-out (LIFO) list.

**Chapter 5. Queues**

A first-in first-out (FIFO) list. Radix sort

**Chapter 10. Binary trees**

Tree is made up of a set of nodes connected by edges. Binary trees restrict the number of child nodes to no more than two. Binary search trees (BST) are those in which data with lesser values are stored in left nodes and greater values in right nodes, provides for efficient searches. Finding minimum, maximum value and specific value. Removing nodes from BST.

**Chapter 11. Graphs and Graph Algorithms**

Introduction of vertices and edges. Adjacency list VS adjacency matrix for storing graph structure.

Visiting every vertex using depth-first and breadth-first. Finding the shortest path using both algorithms. Topological sorting of the graph.