← Back to home

Plan for Algorithms and Data Structures Series

This is a rough plan for a series of blog posts capturing my process of learning and brushing up on different data structures and algorithms.

I'll be covering all of them from the perspective of a FrontEnd developer. Including implementations in JavaScript as well as examples of how these data structures and algorithms are being used in browsers and web development.

Disclaimer: I'm learning myself, so if you see any silly mistake, hit me up and I'll most definitely fix it!

  • Intro and Prerequisites
  • Data Structures
    • Array
      • Sorting
        • Simple sorts
          • Insertion sort
          • Selection sort
          • Radix sort
        • Efficient sorts
          • Quicksort
          • Merge sort
          • Shell sort (?)
          • Heap sort [in heap]
      • Binary Search
      • Shuffling
      • Random Sampling
      • Backtracking
      • Matrix
        • Transpose
        • Rotate
    • Linked List
      • Singly Linked List
      • Doubly Linked List
    • Stack
    • Queue
    • Heap
      • Binary Heap
      • Priority Queue
      • Heap sort
    • Hash table
      • Hashing functions
      • Collision resolution
    • Binary
      • From and to Binary
      • Bitwise operations
    • String
      • Levenshtein distance
      • Knut-Morris-Pratt
  • Trees and Graphs
    • Graph Types
    • Traversal
      • in-order, post-order, pre-order
      • Depth-First Search
      • Breadth-First Search
    • Path finding
      • Breadth-First Search
      • Djikstar
      • A*
    • Minimum Spanning Tree
    • Topological Sorting
    • Binary Search Trees
      • Binary Search
      • Self Balancing BSTs
        • Red-Black Tree
        • AVL tree
    • Union Find
    • Finding Cycles
    • Strongly Connected Component
    • Bipartite Graphs
    • Finding Redundant Connections
    • Finding Bridge Connections
    • Network Flow
    • Suffix tree
    • Trie
  • Advanced Data Structures
    • CRDTs
    • GeoHash
  • Other Algorithms
    • Dynamic Programming
      • Longest Common Subsequence
      • Edit distance
      • Knapsack
      • Egg dropping puzzle
    • Recursion