Grokking Data Structures & Algorithms for Coding Interviews
Unlock Coding Interview Success: Dive Deep into Data Structures and Algorithms!

Course Overview
In this comprehensive course, we delve deep into the world of data structures & algorithms, covering both the commonly used and the more advanced topics. Participants will learn the principles, usage, and implementation of various data structures, along with their time and space complexities. The course will feature multiple coding problems for each data structure and is tailored for coding interviews. By the end of this course, learners will be adept at selecting and applying the most suitable data structure for any coding problem, ensuring optimized code performance. Prepare to elevate your coding skills and ace those coding interviews with confidence!
Course Content
Stack
Introduction to Stack
Operations on Stack
Implementing Stack Data Structure
Applications of Stack
Problem 1: Balanced Parentheses (easy)
Problem 2: Reverse a String (easy)
Problem 3: Decimal to Binary Conversion (medium)
Problem 4: Next Greater Element (easy)
Problem 5: Sorting a Stack (easy)
Problem 6: Simplify Path (medium)
Problem 7: Remove All Adjacent Duplicates In String (medium)
Problem 8: Removing Stars From a String (medium)
Problem 9: Make The String Great (easy)
Queue
Introduction to Queues
Working with Simple Queues
Diving Deeper – Circular Queues and Deques
Applications and Advanced Concepts
Reverse a Queue (easy)
Implement Stack using Queues (easy)
Generate Binary Numbers from 1 to N
Zigzag Iterator (medium)
Max of All Subarrays of Size 'k' (medium)
Palindrome Check using Queue (easy)
LinkedList
Introduction to LinkedList
Operations on Singly Linked List
Operations on Doubly Linked List
Problem 1: Reverse Linked List (easy)
Problem 2: Remove Duplicates from Sorted List (easy)
Problem 3: Merge Two Sorted Lists (easy)
Problem 4: Find if Doubly Linked List is a Palindrome (easy)
Problem 5: Swap Nodes in Pairs (medium)
Tree & Binary Search Tree
Hash Table (aka Hashmap or Dictionary)
Graph
Introduction to Graph
Graph Representations
Graph as an Abstract Data Type (ADT)
Graph Traversal - Depth First Search(DFS)
Graph Traversal - Breadth First Search (BFS)
Problem 1: Find if Path Exists in Graph(easy)
Problem 2: Number of Provinces (medium)
Problem 3: Minimum Number of Vertices to Reach All Nodes(medium)
Sorting
Introduction to Sorting Algorithms
Advanced Sorting Techniques
Apple Redistribution into Boxes (easy)
Sort Array by Increasing Frequency (easy)
Sort Vowels in a String (medium)
Reduction Operations to Make the Array Elements Equal (medium)
Divide Array Into Arrays With Max Difference (medium)
Top 'K' Frequent Numbers (medium)
Meeting Rooms II (medium)
What people say about our courses






About the Author

Arslan Ahmad
Industry Expertise & Leadership
Arslan Ahmad is the lead author of Grokking Data Structures & Algorithms for Coding Interviews. As the founder of Design Gurus and a former FAANG hiring manager, he has worked at industry giants like Facebook (now Meta) and Microsoft.
He has conducted hundreds of system design interviews, giving him unique insight into what top tech companies look for in candidates.
The course also incorporates expertise from senior engineers at Google, Meta, Amazon, Microsoft, and Uber, ensuring you learn system design best practices from professionals who have built and scaled real-world systems.
500+
Interviews Conducted
10k+
Students Taught
Related Courses
$58
$118
