Apna College Complete C++ DSA Course: study plan and how long it takes
The Apna College playlist is 144 videos and 69.6 hours long. Here's how long it takes at different paces, a week-by-week schedule built from the real videos, and a planner that turns it into your own daily plan.
144 videos · 69.6 hours · Apna College
Apna College's Complete C++ DSA Course, taught by Shradha Khapra, takes you from flowcharts and your first C++ program through arrays, recursion, linked lists, trees and graphs, with interview problems in every section. It's taught in Hindi and aimed at placement preparation.
The series is still growing: at the time of writing, the dynamic programming chapter has just started. The planner always reads the live playlist, so your schedule includes new videos as they're added.
Who it's for: Students preparing for placements who want a structured C++ DSA course in Hindi, starting from zero.
How long does it take?
The full playlist is 69.6 hours across 144 videos. Here's roughly how many days that is at different daily watch times and speeds, counting video time only:
| Daily time | At 1x | At 1.5x | At 2x |
|---|---|---|---|
| 30 min a day | 140 days | 93 days | 70 days |
| 1 h a day | 70 days | 47 days | 35 days |
| 2 h a day | 35 days | 24 days | 18 days |
Make your own schedule
The playlist link is already filled in. Press Plan, set how much time you have each day and your speed, and you'll get a day-by-day schedule with a finish date and a calendar file. It reads the live playlist, so new videos are included.
Week-by-week schedule
A sample plan at 2 hours a day and normal speed, using whole videos so none is split across days. That's 6 weeks in total. For a different pace, start date or speed, use the planner above.
Week 1Videos 1–11 · 10h 30m
Day 1 · 1h 26m
- 1Lecture 1 : Flowchart & Pseudocode + Installation | DSA Series by Shradha Khapra Ma'am | C++1h 26m
Day 2 · 1h 17m
- 2Lecture 2 : Variable, Data Types & Operators | DSA Series by Shradha Ma'am | C++1h 17m
Day 3 · 1h 35m
- 3Lecture 3: Conditional Statements & Loops | DSA Series by Shradha Ma'am | C++1h 35m
Day 4 · 1h 31m
- 4Lecture 4: Patterns | DSA Series by Shradha Khapra Ma'am | C++1h 31m
Day 5 · 1h 27m
- 5Lecture 5: Functions | DSA Series by Shradha Khapra Ma'am | C++49m
- 6Binary Number System | DSA Series by Shradha Khapra Ma'am | C++37m
Day 6 · 1h 33m
- 7Bitwise Operators, Data Type Modifiers & more | DSA Series by Shradha Khapra Ma'am | C++39m
- 8Array Data Structure - Part1 | DSA Series by Shradha Khapra Ma'am | C++54m
Day 7 · 1h 43m
- 9Vectors in C++ | Arrays Part 2 | DSA Series by Shradha Ma'am | Lecture 940m
- 10Kadane's Algorithm | Maximum Subarray Sum | DSA Series by Shradha Ma'am23m
- 11Majority Element | Brute- Better-Best Approach | Moore's Voting Algorithm | & Pair Sum39m
Week 2Videos 12–33 · 12h 19m
Day 8 · 1h 55m
- 12Time & Space Complexity - DSA Series by Shradha Ma'am1h 26m
- 13Buy and Sell Stock Problem and Pow(X,N) Power exponential Problem - Leetcode | DSA Series29m
Day 9 · 1h 48m
- 14Container with Most Water Problem | Brute & Optimal Solution | Two Pointer Approach - Leetcode 1132m
- 15Product of Array Except Self | Brute to Optimal Solution | Leetcode 23830m
- 16Pointers in C++ | In Detail | DSA Series by Shradha Ma'am46m
Day 10 · 1h 55m
- 17Binary Search Algorithm - Iterative and Recursive Method | [Theory + Code] with Example44m
- 18Search in Rotated Sorted Array | Binary Search | Leetcode 3320m
- 19Peak Index in Mountain Array | Binary Search | Leetcode 85224m
- 20Single Element in Sorted Array | Binary Search | DSA Series Lecture 2028m
Day 11 · 1h 31m
- 21Book Allocation or Allocate Books Problem | DSA Series - Binary Search33m
- 22Painter's Partition Problem | DSA Placement Series - Binary Search | Lecture 2228m
- 23Aggressive Cows Problem | DSA Placement Series - Binary Search | Lecture 2330m
Day 12 · 1h 52m
- 24Sorting Algorithms | Bubble Sort, Selection Sort & Insertion Sort | DSA Series by Shradha Ma'am35m
- 25Sort an Array of 0s, 1s & 2s | DNF Sorting Algorithm | Leetcode 7534m
- 26Merge Sorted Arrays Problem and Next Permutation Problem | DSA Series44m
Day 13 · 1h 59m
- 27C++ STL Complete Tutorial | Standard Template Library - One Shot1h 27m
- 28How to setup C++ compiler on Mac ? | Software Installation for Mac users2m
- 29Strings & Character Arrays in C++ - Part 1 | DSA Placement Series30m
Day 14 · 1h 20m
- 30Valid Palindrome & Remove all Occurrences | Strings Part 2 | DSA Placement Series24m
- 31Strings - Part 3 | Permutation in String | DSA Placement Series22m
- 32Strings - Part 4 | Reverse Words in String | DSA Placement Series15m
- 33String Compression problem - Lecture 32 | Leetcode 44319m
Week 3Videos 34–55 · 11h 42m
Day 15 · 1h 33m
- 34Maths for DSA - One Shot | Euclid's Algorithm | Sieve of Eratosthenes | Modular Arithmetics56m
- 352D Arrays in C++ | Part 1 | DSA Series by Shradha Ma'am38m
Day 16 · 1h 56m
- 36Search a 2D Matrix - Variation I & II | 2D Arrays - Part 2 | DSA Series by Shradha Ma'am38m
- 37Spiral Matrix | 2D Arrays - Part 3 | Leetcode 54 | DSA Series by Shradha Ma'am25m
- 38Two Sum | Find Duplicate | Find Repeating & Missing Values | Hashing Problems54m
Day 17 · 1h 42m
- 393 Sum | Brute, Better & Optimized Approach with Codes | Leetcode 1544m
- 404 Sum Problem | Optimal Approach | DSA Series by Shradha Ma'am23m
- 41Subarray Sum Equals K | Brute-Better-Optimal approach35m
Day 18 · 1h 28m
- 42Recursion Tutorial - Basics to Advanced | Part 146m
- 43Recursion Part 2 : Fibonacci numbers problem, Binary search problem, Find if array sorted problem42m
Day 19 · 1h 57m
- 44Recursion Part 3 : Backtracking in Detail | Print all Subsets | Subsets II42m
- 45Permutations of an Array/String | Recursion & Backtracking23m
- 46N-Queens Problem | using Backtracking | Leetcode Hard24m
- 47Sudoku Solver Problem | using Backtracking | Leetcode Hard27m
Day 20 · 1h 53m
- 48Rat in a Maze Problem | Backtracking33m
- 49Combination Sum Problem | Recursion & Backtracking24m
- 50Palindrome Partitioning Problem | Recursion & Backtracking21m
- 51Merge Sort Algorithm | Recursion & Backtracking32m
- 52One Major update & reaching 1000M views4m
Day 21 · 1h 13m
- 53Quick Sort Algorithm - Lecture 51 of Complete DSA Placement Series26m
- 54Count Inversions Problem | Brute and Optimal25m
- 55KNIGHTS TOUR Problem - Backtracking | Leetcode 259623m
Week 4Videos 56–84 · 12h 49m
Day 22 · 2h 4m
- 56OOPs Tutorial in One Shot | Object Oriented Programming | in C++ Language | for Placement Interviews2h 4m
Day 23 · 1h 55m
- 57Introduction to Linked List | Data Structures & Algorithms51m
- 58Reverse a Linked List | DSA Series by @shradhaKD10m
- 59Middle of a Linked List | DSA Series by @shradhaKD11m
- 60Detect & Remove Cycle in Linked List | DSA Series by @shradhaKD30m
- 61Merge Two Sorted Lists | DSA Series by @shradhaKD13m
Day 24 · 1h 52m
- 62Copy List with Random Pointer | DSA Series by @shradhaKD21m
- 63Doubly Linked List Tutorial32m
- 64Circular Linked List in Data Structures34m
- 65Flatten a Doubly Linked List | Leetcode 430 | DSA Series by @shradhaKD25m
Day 25 · 1h 46m
- 66Reverse Nodes in K-Group | Linked List21m
- 67Swap Nodes in Pairs | Linked List20m
- 68Introduction to STACKS | Data Structures & Algorithms | Lecture 6622m
- 69Valid Parentheses | Stack | Lecture 6716m
- 70Stock Span Problem | Optimal Solution26m
Day 26 · 1h 51m
- 71Next Greater Element | Optimal Solution & Code24m
- 72Previous Smaller Element | Optimal Solution & Code9m
- 73Design a Min Stack | Optimal Solution & Code25m
- 74Largest Rectangle in Histogram | Best Solution & Code33m
- 75L73. Next Greater Element - II | Stack & Queue20m
Day 27 · 1h 59m
- 76L74. Trapping Rainwater Problem | Optimal Solution & Code31m
- 77L75. The Celebrity Problem | Stack & Queue15m
- 78L76. Implement LRU Cache | Linked List36m
- 79New Chapter : Queue Data Structure19m
- 80L78. Circular Queue in Data Strucuture19m
Day 28 · 1h 23m
- 81L79. Implement Queue using Stack & Stack using Queue16m
- 82L80. First Unique Character in String | Easy - Leetcode38713m
- 83L81. Sliding Window Maximum | Queue31m
- 84L82. Gas Station | Greedy Approach | Leetcode 13422m
Week 5Videos 85–123 · 12h 42m
Day 29 · 1h 37m
- 85Binary Trees in Data Structures | Tree Traversal | DSA Placement Series1h 14m
- 86L.84 Height of a Binary Tree | Count of Nodes in a Binary Tree23m
Day 30 · 1h 59m
- 87L.85 Identical Tree (same tree) | Subtree of another Tree23m
- 88L.86 Diameter of Binary Tree19m
- 89Top View of a Binary Tree | DSA Series : L.8720m
- 90Kth Level of a Binary Tree | DSA Series : L.888m
- 91Lowest Common Ancestor in Binary Tree | DSA Series : L.8918m
- 92Build Tree from Preorder & Inorder | DSA Series : L.9021m
- 93Transform to Sum Tree | DSA Series : L.919m
Day 31 · 1h 57m
- 94Binary Tree Paths | DSA Series : L.9210m
- 95Maximum Width of Binary Tree | DSA Series : L.9321m
- 96Morris Inorder Traversal | DSA Series : L.9418m
- 97Flatten Binary Tree to Linked List | DSA Series : L.9516m
- 98Binary Search Trees (BSTs) | DSA Series : L.9643m
- 99Sorted Array to Balanced BST | DSA Series : L.979m
Day 32 · 1h 52m
- 100Validate Binary Search Tree | DSA Series : L.9813m
- 101Min Distance between BST Nodes | DSA Series : L.9914m
- 102Kth Smallest in BST | DSA Series : L.10013m
- 103Lowest Common Ancestor in BST | DSA Series : L.10112m
- 104Construct BST from Preorder | DSA Series : L.10219m
- 105Merge Two Binary Search Trees | DSA Series : L.10317m
- 106Recover BST | DSA Series : L.10424m
Day 33 · 1h 58m
- 107Largest BST in Binary Tree | DSA Series : L.10525m
- 108Populate Next Right Pointers in Each Node | DSA Series : L.10611m
- 109BST Iterator | DSA Series : L.10717m
- 110Inorder Predecessor & Successor in BST | DSA Series : L.10820m
- 111Introduction to Graphs | Data Structure & Algorithms26m
- 112BFS Traversal in Graphs | Data Structure & Algorithms19m
Day 34 · 1h 52m
- 113DFS Traversal in Graphs | Data Structure & Algorithms14m
- 114Detect a Cycle in Undirected Graph using DFS | Data Structure & Algorithms20m
- 115Detect a Cycle in Undirected Graph using BFS | Data Structure & Algorithms18m
- 116Number of Islands | Connected Components in Matrix | Leetcode 20017m
- 117Rotting Oranges | Multi-source BFS | Leetcode 99426m
- 118Detect a Cycle in Directed Graph using DFS | Lecture 11616m
Day 35 · 1h 27m
- 119Topological Sorting in Graph | using DFS | Lecture 11716m
- 120Course Schedule Problem | using Graph & Topological Sort18m
- 121Course Schedule II Problem | using Graph & Topological Sort20m
- 122Flood Fill Algorithm | Graph Problem15m
- 123Topological Sorting using Kahn's Algorithm | Graph - DSA Lecture 12119m
Week 6Videos 124–144 · 9h 36m
Day 36 · 1h 31m
- 124Dijkstra's Algorithm - Single Source Shortest Path - Greedy Method35m
- 125Bellman Ford Algorithm - Single Source Shortest Path - Dynamic Programming24m
- 126DSA Series Quick Update - 125 lectures | New DSA Sheet | DP, Heaps, Tries etc6m
- 127Prim's Algorithm - Minimum Spanning Tree in Graph26m
Day 37 · 1h 37m
- 128Disjoint Set Union | With Rank/Size & Path Compression | Union Find34m
- 129Kruskal's Algorithm - Minimum Spanning Tree in Graph29m
- 130Number of Provinces | Graph Problem13m
- 131Min Cost to Connect All Points | Graph Problem21m
Day 38 · 1h 40m
- 132Cheapest Flights Within K Stops | Graph Problem30m
- 133Bridge in Graph using Tarjan's Algorithm | Critical Connections33m
- 134Articulation Point in Graph using Tarjan's Algorithm | Critical Points37m
Day 39 · 1h 36m
- 135Strongly Connected Components - Kosaraju's Algorithm | Graphs26m
- 136Floyd Warshall Algorithm | All Pairs Shortest Path in Graph28m
- 137Complete Dynamic Programming | DP Series - Lecture 142m
Day 40 · 1h 44m
- 138DP 2. Climbing Stairs | 1D Dynamic Programming26m
- 139DP 3. House Robber | 1D Dynamic Programming26m
- 140DP 4. House Robber II | 1D Dynamic Programming23m
- 141DP 5. Frog Jump | 1D Dynamic Programming29m
Day 41 · 1h 28m
- 142DP 6. Min Cost Climbing Stairs | 1D Dynamic Programming26m
- 143Fractional Knapsack Algorithm | Greedy Method17m
- 144DP 8. 0/1 Knapsack | Recursion to DP Solution | Space Optimized45m
Study plan, phase by phase
Video numbers are positions in the playlist. To schedule just one phase, enter its numbers in the planner's From and To fields.
- 01
C++ basics, arrays and complexity
Videos 1–12 · 11h 56m
Flowcharts, variables and operators, conditionals and loops, patterns, functions, binary and bitwise operators, arrays, vectors, Kadane's algorithm, majority element and time complexity.
- 02
Array problems, pointers, binary search, sorting and STL
Videos 13–27 · 9h 2m
Stock and power problems, container with most water, pointers, binary search and its classic problems (book allocation, painter's partition, aggressive cows), sorting and the STL.
- 03
Strings, maths, 2D arrays and sum problems
Videos 28–41 · 7h 2m
Strings and character arrays, maths for DSA, 2D arrays and matrix search, spiral matrix, two sum, 3 sum, 4 sum and subarray sum equals K.
- 04
Recursion, backtracking, sorting and OOP
Videos 42–56 · 8h 35m
Recursion basics to backtracking, permutations, N-Queens, Sudoku, rat in a maze, combination sum, merge sort, quick sort, count inversions, knight's tour and OOP in one shot.
- 05
Linked lists, stacks and queues
Videos 57–84 · 10h 45m
Singly, doubly and circular linked lists, stacks with next greater element, histogram and LRU cache, and queues with sliding window maximum and gas station.
- 06
Binary trees and binary search trees
Videos 85–110 · 8h 38m
Tree traversals and properties, views, LCA, construction, Morris traversal, then BSTs from validation to recovery and iterators.
- 07
Graphs
Videos 111–136 · 9h 46m
BFS and DFS, cycle detection, islands and rotting oranges, topological sort, Dijkstra, Bellman-Ford, Prim, DSU, Kruskal, Tarjan's bridges and articulation points, Kosaraju and Floyd-Warshall.
- 08
Dynamic programming (in progress)
Videos 137–144 · 3h 53m
An introduction to DP, climbing stairs, house robber, frog jump, fractional and 0/1 knapsack. More DP lectures are being added.
Tips for finishing
- Video 52 is a channel update, not a lesson. Tick it off in the playlist length calculator and the planner will skip it.
- Set a finish date for each phase using the planner's video range. Basics alone is almost 12 hours.
- Solve the problem on LeetCode before watching the solution part of each video.