DSA

Data structures and algorithms using JavaScript.

Beginner

  1. Big O: A way to describe how much slower or bigger a program gets as its input grows.
  2. Arrays: The most fundamental way to store an ordered list of items in memory.
  3. Strings: A sequence of characters, and the special rules for working with them efficiently.

Intermediate

  1. Linked Lists: A chain of items where each one points to the next, instead of sitting side by side in memory.
  2. Stack: A structure where the last item added is always the first one removed.
  3. Queue: A structure where the first item added is always the first one removed.
  4. Hash Tables: A structure that lets you look up a value almost instantly using a key, instead of searching through everything.
  5. Recursion: A function that solves a problem by calling itself on a smaller version of the same problem.
  6. Binary Search: A fast way to find a value in a sorted list by repeatedly cutting the search area in half.

Advanced

  1. Sorting: Arranging a list of items into order — and why different approaches to it matter a lot at scale.