DEV Community

Aman Verma
Aman Verma

Posted on

DATA STRUCTURE


A. Introduction

  1. Course Overview
  2. How to Navigate the Course
  3. Choosing Programming Language
  4. Problem-Solving Approach

B. Warm Up / Programming Basics

  1. Programming Fundamentals
  2. Functions
  3. Conditional Statements (if-else)
  4. Loops (for, while, do-while)
  5. Nested Loops
  6. Star Pattern Problems
  7. Second Largest Element
  8. Count Digits
  9. Palindrome (Number/String)
  10. Reverse Integer

C. Time & Space Complexity

  1. Time Complexity
  2. Space Complexity
  3. Big-O Notation
  4. Best, Worst & Average Case

D. Arrays (Easy / Medium)

  1. Array Basics
  2. Remove Duplicates
  3. Remove Element
  4. Reverse String
  5. Best Time to Buy & Sell Stock
  6. Merge Sorted Arrays
  7. Move Zeros
  8. Max Consecutive Ones
  9. Missing Number
  10. Single Number

E. Recursion (Easy / Medium)

  1. Recursion Basics
  2. Base Case & Recursive Case
  3. Sum of First N Numbers
  4. Sum of Array Elements
  5. Factorial
  6. Power of Two
  7. Recursion Patterns

f. Searching & Sorting

  1. Linear Search
  2. Binary Search
  3. Bubble Sort
  4. Selection Sort
  5. Insertion Sort
  6. Merge Sort

G. Linked List (Easy / Medium)

  1. Introduction to Linked List
  2. Design Linked List
  3. Insert Nodes
  4. Delete Nodes
  5. Middle of Linked List
  6. Reverse Linked List
  7. Cycle Detection (Hashing & Floyd’s Algorithm)
  8. Palindrome Linked List
  9. Intersection of Linked Lists
  10. Remove Nth Node (One-Pass & Two-Pass)
  11. Remove Duplicates
  12. Odd-Even Linked List
  13. Add Two Numbers
  14. Merge Two Sorted Lists
  15. Rotate Linked List
  16. Swap Nodes (Iterative & Recursive)

H. Strings (Easy / Medium)

  1. Length of Last Word
  2. Find Words Containing Character
  3. Jewels and Stones
  4. Frequency of Vowels & Consonants
  5. Balanced Strings
  6. Reverse String II
  7. Valid Palindrome
  8. Largest Odd Number in String
  9. Longest Common Prefix
  10. Valid Anagram
  11. Isomorphic Strings
  12. Group Anagrams

I. Stack & Queue

  1. Stack & Queue Basics
  2. Stack Operations
  3. Queue Operations
  4. Stack using Queues
  5. Queue using Stacks
  6. Valid Parentheses
  7. Min Stack
  8. Remove Outermost Parentheses
  9. Reverse Polish Notation
  10. Next Greater Element (I & II)
  11. Daily Temperatures
  12. Rotting Oranges

J. Binary Search Algorithm

  1. Square Root of X
  2. Safe Middle Element Calculation
  3. Guess Higher or Lower
  4. Search in Rotated Sorted Array
  5. First Bad Version
  6. Find Peak Element
  7. Minimum in Rotated Sorted Array
  8. First & Last Position in Sorted Array
  9. Peak in Mountain Array
  10. Single Element in Sorted Array
  11. K Closest Elements

K. Two Pointers & Sliding Window

  1. Two Sum
  2. Two Sum II
  3. Is Subsequence
  4. First Occurrence in String
  5. KMP Algorithm
  6. Intersection of Linked Lists
  7. Container With Most Water
  8. Three Sum
  9. Trapping Rain Water
  10. Longest Substring Without Repeating Characters
  11. Longest Repeating Character Replacement
  12. Permutation in String
  13. Sliding Window Maximum

L. Binary Tree

  1. Tree Basics
  2. Tree Traversals
  3. DFS & BFS
  4. Level Order Traversal
  5. Maximum Depth
  6. Path Sum
  7. Symmetric Tree
  8. Invert Tree
  9. Same Tree
  10. Balanced Binary Tree
  11. Diameter of Binary Tree
  12. Zigzag Traversal
  13. Subtree Checking
  14. Lowest Common Ancestor
  15. Right Side View
  16. Count Good Nodes
  17. Populate Next Right Pointer
  18. Maximum Path Sum

M. Binary Search Tree (BST)

  1. BST Introduction
  2. Valid BST
  3. Search in BST
  4. Insert into BST
  5. Kth Smallest Element
  6. Lowest Common Ancestor in BST

N. Heap / Priority Queue

  1. Heap Basics
  2. Build Heap
  3. Insert & Delete
  4. Heapify
  5. Heap Sort
  6. Priority Queue
  7. Kth Largest Element
  8. Kth Largest in Stream
  9. Last Stone Weight
  10. Top K Frequent Elements
  11. Kth Smallest in Sorted Matrix

O. Hashing

  1. Hash Table Basics
  2. Cycle Detection
  3. Palindrome Linked List
  4. Linked List Intersection
  5. Remove Duplicates
  6. Character Frequency
  7. Valid Anagram
  8. Isomorphic Strings
  9. Group Anagrams
  10. Next Greater Element
  11. Two Sum II
  12. KMP Algorithm
  13. Permutation in String
  14. Sliding Window Maximum

P. Backtracking

  1. Backtracking Basics
  2. Subsets / Power Set
  3. Combinations
  4. Permutations
  5. Subsets II
  6. Combination Sum I, II, III
  7. Letter Combinations
  8. Palindrome Partitioning
  9. Word Search
  10. N-Queens

Q. Greedy Algorithm

  1. Greedy Strategy
  2. Two City Scheduling
  3. Assign Cookies
  4. Lemonade Change
  5. Stock Buy & Sell II
  6. Insert Interval
  7. Merge Intervals
  8. Partition Labels
  9. Non-Overlapping Intervals
  10. Task Scheduler
  11. Gas Station
  12. Car Pooling
  13. Candy Distribution

R. Dynamic Programming

  1. DP Fundamentals
  2. Top-Down & Bottom-Up
  3. Fibonacci DP
  4. Climbing Stairs
  5. Min Cost Climbing Stairs
  6. House Robber I & II
  7. Coin Change I & II
  8. Palindromic Substrings
  9. Longest Palindromic Substring
  10. Decode Ways
  11. Kadane’s Algorithm
  12. Max Product Subarray
  13. Word Break
  14. LIS
  15. Partition Equal Subset Sum
  16. Unique Paths

19. Graphs

  1. Graph Basics
  2. BFS & DFS
  3. Path Existence
  4. Cycle Detection
  5. Topological Sort
  6. Shortest Path Algorithms
  7. Dijkstra
  8. Bellman-Ford
  9. Floyd-Warshall
  10. Minimum Spanning Tree
  11. Prim’s Algorithm
  12. Kruskal’s Algorithm
  13. Union Find
  14. Network & Flight Problems

S. Tries

  1. Trie Introduction
  2. TrieNode Structure
  3. Insert, Search, Prefix
  4. Time & Space Complexity

Top comments (0)