Skip to content

Latest commit

 

History

History
89 lines (67 loc) · 1.5 KB

topics.md

File metadata and controls

89 lines (67 loc) · 1.5 KB

Topics

Arrays

Strings

  • Prefix trees (Tries)
  • Suffix trees
  • Suffix arrays
  • KMP
  • Rabin-Karp
  • Boyer-Moore

Sorting

  • Bubble sort
  • Insertion sort
  • Merge sort
  • Quick sort
  • Selection sort
  • Bucket sort
  • Radix sort
  • Counting sort

Linked Lists

Stacks

Queues

Hash tables

  • Collision resolution algorithms

Trees

  • BFS
  • DFS (inorder, postorder, preorder)
  • Height

Binary Search Trees

  • Insert node
  • Delete a node
  • Find element in BST
  • Find min, max element in BST
  • Get successor element in tree
  • Check if a binary tree is a BST or not

Heaps / Priority Queues

  • Insert
  • Bubble up
  • Extract max
  • Remove
  • Heapify
  • Heap sort

Graphs

  • Various implementations
    • Adjacency matrix
    • Adjacency list
    • Adjacency map
  • Single-source shortest path
  • Dijkstra
  • Bellman-Ford
  • Topo sort
  • MST
  • Prim algorithm
  • Kruskal's algorithm
  • Union Find Data Structure
  • Count connected components in a graph
  • List strongly connected components in a graph
  • Check for bipartite graph

Dynamic Programming

  • Count Change
  • 0-1 Knapsack

System Design