Data Structures & Algorithms Topics
Click any topic below to learn more.
Introduction
Introduction to DSA
Arrays & Strings
Basics of Arrays
Multi-dimensional Arrays
String Manipulation Techniques
Common Array & String Problems
Linked Lists
Singly Linked List
Doubly Linked List
Circular Linked List
Insertion, Deletion, Traversal
Applications
Stacks & Queues
Stack Operations & Implementation
Queue Operations & Implementation
Circular & Priority Queues
Applications in Algorithms
Trees
Binary Trees & Traversals
Binary Search Trees (BST)
Balanced Trees (AVL, Red-Black Trees)
Heap & Priority Queue
Trie Data Structure
Graphs
Graph Representations (Adjacency List/Matrix)
Graph Traversals (DFS, BFS)
Shortest Path: Dijkstra & Bellman-Ford
Minimum Spanning Tree: Prim & Kruskal
Topological Sorting
Sorting Algorithms
Bubble Sort, Selection Sort, Insertion Sort
Merge Sort, Quick Sort, Heap Sort
Counting Sort, Radix Sort
Comparison & Non-comparison Sorts
Searching Algorithms
Linear Search
Binary Search
Search in Trees & Graphs
Recursion & Backtracking
Recursion Concepts
Backtracking Algorithms
Example Problems (N-Queens, Sudoku)
Dynamic Programming
Memoization & Tabulation
Classic Problems (Knapsack, LCS)
Optimization Techniques
Greedy Algorithms
Greedy Method Overview
Activity Selection Problem
Huffman Coding
Hashing
Hash Functions & Storage
Collision Resolution Techniques
Applications of Hashing
Advanced Topics (Optional)
Segment Trees & Fenwick Trees
Disjoint Set Union (Union-Find)
String Matching Algorithms (KMP, Rabin-Karp)
Strongly Connected Components, Bridges