Skip to content

Data Structure And Algorithms Roadmap

Guides lead a user through a specific task they want to accomplish, often with a sequence of steps. Writing a good guide requires thinking about what your users are trying to do.

Pick a Language

  • πŸ’ Javascript
  • πŸ’ Java
  • πŸ’ Go
  • πŸ’ C#
  • πŸ’ C++
  • πŸ’ Python
  • πŸ’ Rust
  • πŸ’ Ruby

Programming Fundamentals

  • πŸ’ Language Syntax
  • πŸ’ Control Structures
  • πŸ’ Functions
  • πŸ’ OOP Basics
  • πŸ’ Pseudo Code

Data Structures

  • πŸ’ What are Data Structures
  • πŸ’ Importance of Data Structures

Basic Data Structures

  • πŸ’ Array
  • πŸ’ Linked Lists
  • πŸ’ Stacks
  • πŸ’ Queues
  • πŸ’ Hash Tables

Algorithmic Complexity

  • πŸ’ Time vs Space Complexity
  • πŸ’ How to Calculate Complexity

Common Runtimes

  • πŸ’ Constants
  • πŸ’ Logarithmic
  • πŸ’ Linear
  • πŸ’ Polynomial
  • πŸ’ Exponential
  • πŸ’ Factorial

Asymptotic Notation

  • πŸ’ Big O Notation
  • πŸ’ Big-ΞΈ
  • πŸ’ Big-Ξ©

Sorting Algoriths

  • πŸ’ Bubble Sort
  • πŸ’ Merge Sort
  • πŸ’ Insertion Sort
  • πŸ’ Quick Sort
  • πŸ’ Selection Sort
  • πŸ’ Heap Sort

Search Algorithms

  • πŸ’ Linear Search
  • πŸ’ Unidirected Sort

Tree Data Structures

  • πŸ’ Binary Trees
  • πŸ’ Binary Search Trees
  • πŸ’ AVL Trees
  • πŸ’ B-Trees
  • πŸ’ Tree Traversal
    • πŸ’ In-order Traversal
    • πŸ’ Pre-order Traversal
    • πŸ’ Post-order Traversal
  • πŸ’ Search Algorithms
    • πŸ’ Breadth first Search
    • πŸ’ Depth first Search

Graph Data Structures

  • πŸ’ Directed Graph
  • πŸ’ Unidirected Graph
  • πŸ’ Search Algorithms
    • πŸ’ Breadth first Search
    • πŸ’ Depth first Search
  • πŸ’ Sortest Path Algorithms
    • πŸ’ Dijkstra’s Algorithms
    • πŸ’ Bellman Ford
  • πŸ’ Minimum Spanning Tree
    • πŸ’ Prism Algorithm
    • πŸ’ Kruskal’s Algorithm

Advanced Data Structures

  • πŸ’ Trie
  • πŸ’ Segment Trees
  • πŸ’ Fenwick Trees
  • πŸ’ Disjoint Set(Union-Find)
  • πŸ’ Suffix Tress and Arrays

Complex Data Structures

  • πŸ’ B/B+ Tress
  • πŸ’ Skip List
  • πŸ’ ISAM
  • πŸ’ 2-3 Trees

Indexing

  • πŸ’ Linear Indexing
  • πŸ’ Tree-Based Indexing

Problem Solving Techniques

  • πŸ’ Brute Force
  • πŸ’ Backtracking
  • πŸ’ Greedy Algorithms
  • πŸ’ Randomised Algorithms
  • πŸ’ Divide and Conquer
  • πŸ’ Recusrion
  • πŸ’ Dyanamic Programming
  • πŸ’ Two Pointer Techniques
  • πŸ’ Sliding Window Techniques

Platforms For Practice

  • πŸ’ Leetcode
  • πŸ’ Edabit
  • πŸ’ Codechef
  • πŸ’ CodeStudio