Strategies

  • Brute Force
  • Greedy
  • Divide and Conquer
  • Dynamic Programming

Linear Containers

Array

  • Static Array (Fixed size)
  • Dynamic Array (Growable)

List

  • Single Linked List
  • Double Linked List
  • Circular Linked List

Queue

  • Simple Queue
  • Circular Queue
  • Priority Queue

Stack

Deque

Nom-Linear Containers

Graphs

  • Directed Graph
  • Undirected Graph
  • Weighted Graph
  • Unweighted Graph

Trees

  • Binary Tree
  • Binary Search Tree
  • AVL Tree
  • Red-Black Tree
  • B-Tree
  • B+Tree
  • Trie

Heap

  • Min Heap
  • Max Heap

Hash-based

  • Hash Map

Sets

  • Union Find
  • Disjoint Set

Algorithms

Sorting

  • Bubble Sort
  • Selection Sort
  • Insertion Sort
  • Merge Sort
  • Quick Sort
  • Heap Sort

Searching

  • Linear Search
  • Binary Search

Graph Algorithms

  • Binary Search Tree
  • Breadth-First Search (BFS)
  • Depth-First Search (DFS)
  • Dijkstra’s Algorithm
  • Kruskal’s Algorithm
  • Prim’s Algorithm
  • Graph Coloring
  • Travelling Salesman Problem
  • Hamiltonian Cycle
  • Minimum Spanning Tree