Data structures and algorithms every developer should know

I struggle with data structures and algorithms (DSAs) as much as the next developer. I find myself having to re-learn every time I need them - during interview and when I need to teach it. Like now.

Below are the data structures that I think I every developer should:

  1. Arrays
  2. Stack
  3. Queue
  4. Hash Table
  5. Linked Lists - Singly and Doubly
  6. Binary Search Trees
  7. Graphs

Below are the algorithms that I think I every developer should:

  1. Sorting - Quicksort, Mergesort, Selection Sort
  2. Traversing, adding, deleting a node in Linked List
  3. Traversing, adding, deleting a child node in Binary Search Trees

The above are my no means an exhaustive list but a great starting point.