Facebook Pixel

Learn Data Structures with Javascript – DSA tutorial

Learn Data Structures & Algorithms - From Zero to Hero 🔥

English
4.9(10K+ Reviews)
Lifetime validity
Structured, high-quality video lessons01
Start from scratch, no DSA experience needed02
Company wise interview practice questions03
Verified certificate to boost your Resume04
7-Day no-questions-asked refund policy05
Get Lifetime Access And All Future Updates06
Solution code in - JS, C, C++, Java & Python07
High-Quality Notes, interview preparation08
Strong Problem-Solving Foundation09
Time & Space Complexity Mastery10
namasteDev
Do you have any doubts about this course?

Our impact in Numbers

Empowering developers worldwide to build the next generation of technology through community and education.

0+

Success Stories

0+

Companies Hired

0+

Developer Community

0+

Topics Taught

Our Mission

The Foundation

The mission of this series is to take you from Zero to Hero in Data Structures & Algorithms, with a focus on deep understanding of all the DSA fundamental concepts.

Our goal isn’t just to help you solve problems, but to make you fall in love with algorithms. Every concept is broken down line by line, with clear explanations on how it works, why it works, how to optimize it, finding the time and space complexity and finally converting your approach to code.

We follow a learn-by-doing philosophy. You'll master DSA while practicing a lots of coding problems, starting right from the basics and slowly moving to highly advanced concepts.

The Journey

By the end of this course, you’ll have the skills and confidence to crack DSA rounds at top companies and approach new DSA problems with ease. This course is intense. It demands your time, consistency, and dedication. But if you commit, it can be a game-changer for your tech career.

Are you ready?

Come join us and become a DSA hero. 🚀

Course Content

Introduction to Linked List
Preview

Get started with the basics of Linked Lists.

Design Linked List

Learn how to design and implement your own Linked List.

Adding Nodes to Linked List

Learn to insert nodes into a Linked List at various positions.

Deleting Nodes in Linked List

Understand node deletion in a Linked List.

Middle of Linked List

Find the middle element in a Linked List efficiently.

Reverse Linked List

Reverse a Linked List in-place using iteration.

Linked List Cycle - Hash Table

Detect cycles in a Linked List using extra space.

Linked List Cycle - Floyd's Algorithm

Detect cycles with Floyd’s Tortoise & Hare algorithm.

Palindrome Linked List

Check if a Linked List is a palindrome.

Intersection of two Linked Lists

Find the intersection node of two Linked Lists.

Remove Linked List Elements

Remove nodes with a specific value from a Linked List.

Remove nth node from end of List - Two Pass

Remove the nth node from the end using a two-pass method.

Remove nth Node from end - One Pass

Remove the nth node from the end in one pass using two pointers.

Remove Duplicates from Sorted List

Remove consecutive duplicates from a sorted Linked List.

Odd Even Linked List

Rearrange nodes based on their position (odd/even index).

Add Two Numbers

Add two numbers represented as Linked Lists.

Merge Two Sorted Lists

Merge two sorted Linked Lists into one.

Rotate List

Rotate a Linked List to the right by k places.

Swap Nodes in Pairs - Iterative Approach

Swap every two adjacent nodes in a Linked List iteratively.

Swap Nodes in Pair - Recursive Approach

Recursively swap every two adjacent nodes in a Linked List.

Introduction to Trees

Understand what trees are and their core properties.

Binary Tree - Traversals Explained

Explore preorder, inorder, and postorder tree traversals.

Preorder Traversal - Recursive Approach

Perform preorder traversal using recursion.

Inorder & PostOrder - Recursive Approach

Implement inorder and postorder recursively.

Preorder Traversal - Iterative Approach

Use a stack to perform preorder traversal iteratively.

Inorder Traversal - Iterative Approach

Inorder traversal using a stack instead of recursion.

Postorder - Iterative Approach - 2 Stacks

Use two stacks for iterative postorder traversal.

Postorder - Iterative Approach - One Stack

Efficient postorder traversal using just one stack.

DFS and BFS in Binary Tree

Understand DFS vs BFS in binary trees.

Level Order Traversal - Queue - BFS

Implement level order traversal using a queue.

Level Order Traversal - Recursive Approach

Perform level order traversal recursively.

Maximum Depth of Binary Tree

Find the max depth of a binary tree.

Path Sum

Check if a path adds up to a target sum.

Symmetric Tree - Recursive Approach

Check if a binary tree is symmetric using recursion.

Symmetric Tree - Iterative Approach

Check symmetry in a binary tree using BFS.

Invert a Binary Tree

Flip a binary tree by swapping left and right nodes.

Same Tree

Check if two binary trees are exactly the same.

Balanced Binary Tree

Check if a binary tree is height-balanced.

Diameter of a Binary Tree

Find the longest path between any two nodes.

Zigzag Level Order Traversal

Traverse a binary tree in zigzag order.

Subtree of another Tree

Check if one binary tree is a subtree of another.

Lowest Common Ancestor

Find the lowest common ancestor of two nodes.

Binary Tree Right Side View

Print the nodes visible from the right side.

Count Good Nodes in Binary Tree

Count nodes that are greater than all previous nodes on the path.

Populating Next Right Pointers in Each Node

Connect each node to its next right node in the same level.

Binary Tree Maximum Path Sum

Find the path in a tree with the maximum sum.

Linked List Cycle - Hash Table

Detect cycles in a Linked List using extra space.

Palindrome Linked List

Check if a Linked List is a palindrome.

Intersection of Two Linked Lists - Two Pointers

Find the intersection node of two linked lists using two pointers.

Remove Duplicates from Sorted List

Remove consecutive duplicates from a sorted Linked List.

Find Words Containing Character

Find words from a list that contain a specific character.

Jewels and Stones

Count how many stones are also jewels.

Find Most Frequent Vowel and Consonant

Identify the most frequent vowel and consonant in a string.

Valid Palindrome - Approach 1 - Extra Space

Check palindrome by cleaning and reversing a string.

Valid Anagram

Check if two strings are anagrams of each other.

Isomorphic Strings

Check if two strings have a one-to-one character mapping.

Group Anagrams - Approach 1 - Sorted Key

Group words that are anagrams using sorted string keys.

Group Anagrams - Approach 2 - Hashed Key

Group anagrams using character frequency hash as key.

Next Greater Element

Find the next greater element for each number in an array.

Two Sum II - Input Array Is Sorted

Solve Two Sum with a sorted array using two pointers.

Find Index of First Occurrence in String

Locate the first occurrence of a substring in a string.

KMP (Knuth-Morris-Pratt) Algorithm

Efficient substring search using the KMP algorithm.

Permutation in String

Check if one string contains a permutation of another.

Longest Substring Without Repeating Characters

Find the longest substring with all unique characters.

Sliding Window Maximum

Find the max value in every window of size k.

Introduction to Dynamic Programming

Understand the basics of Dynamic Programming and its importance.

Fibonacci Numbers using DP

Solve Fibonacci efficiently with Dynamic Programming.

Top Down & Bottom Up - DP approach

Compare top-down and bottom-up DP techniques.

Climbing Stairs

Learn how to solve the classic Climbing Stairs DP problem.

Minimum Cost Climbing Stairs

Solve minimum cost climbing stairs with DP.

House Robber

Maximize robbery amount without robbing adjacent houses.

House Robber II

Solve House Robber II with circular houses constraint using DP.

Coin Change - Top Down - Recursive

Learn recursive top-down DP for the Coin Change problem.

Coin Change - Bottom Up - Iterative

Solve Coin Change with bottom-up DP using iteration.

Palindromic Substrings

Count palindromic substrings using DP.

Longest Palindromic Substring

Find the longest palindromic substring with DP.

Decode Ways

Solve Decode Ways problem with recursion and DP.

Maximum Subarray - Kadane's Algorithm

Find maximum subarray sum using Kadane’s Algorithm.

Maximum Product Subarray - Approach 1

Solve Maximum Product Subarray with DP approach 1.

Maximum Product Subarray - Approach 2

Optimize Maximum Product Subarray with approach 2.

Word Break

Solve the classic Word Break problem by checking if a given string can be segmented into valid words from a dictionary

Longest Increasing Subsequence

Solve the Longest Increasing Subsequence problem by finding the length of the longest strictly increasing sequence in an array.

Partition Equal Subset Sum

Tackle the Partition Equal Subset Sum problem by checking if an array can be split into two subsets with the same total sum.

Coin Change II

Solve the Coin Change II problem by finding how many ways you can make a given amount using an unlimited supply of coins

Unique Paths

Solve the Unique Paths problem by finding the total number of ways to move from the top-left to the bottom-right of a grid.

Introduction to Graphs

Understand what graphs are and why they matter in DSA.

Breadth First Search (BFS)

Learn the Breadth First Search (BFS) algorithm step by step.

Depth First Search (DFS)

Master the Depth First Search (DFS) algorithm for graphs.

Find if Path Exists - BFS

Check if a path exists between two nodes using BFS.

DFS Recursive

Implement Depth First Search recursively in graphs.

All Paths from Source to Target

Find all possible paths from source to target using DFS.

Reconstruct Itinerary

Rebuild an itinerary using graph traversal.

Detect Cycle in Undirected Connected Graph

Detect if a cycle exists in an undirected graph.

Topological Sort - DFS
Preview

Perform Topological Sorting using DFS.

Kahn's Algorithm - Topological Sort - BFS
Preview

Learn Kahn’s Algorithm for Topological Sorting using BFS.

Shortest Path Algorithms in Graphs

Overview of shortest path algorithms in graphs.

Shortest Path in Unweighted Graph - BFS

Find the shortest path in an unweighted graph using BFS.

Dijkstra's Algorithm - Shortest Path Weighted Graph

Understand Dijkstra’s Algorithm for weighted graphs.

Dijkstra's Algorithm - Code

Implement Dijkstra’s Algorithm in code.

Bellman Ford Algorithm - Shortest Path with Negative Weights

Find shortest paths with negative weights using Bellman-Ford.

Bellman Ford Algorithm - Code

Code the Bellman-Ford Algorithm step by step.

Floyd Warshall Algorithm - All Pairs Shortest Path

Understand the Floyd-Warshall Algorithm for all-pairs shortest paths.

Floyd Warshall - Code

Implement the Floyd-Warshall Algorithm step by step in code.

Comparing all Shortest Path Graph Algorithms

Compare Dijkstra, Bellman-Ford, and Floyd-Warshall algorithms.

Minimum Spanning Tree

Understand the concept of a Minimum Spanning Tree (MST).

Prim's Algorithm

Learn Prim’s Algorithm for building MSTs.

Prim's Algorithm - Code

Implement Prim’s Algorithm in code.

Disjoint Set - Union Find

Learn the Union-Find data structure for efficient set merging.

Kruskal's Algorithm

Understand Kruskal’s Algorithm for MST construction.

Kruskal + Union Find - Code

Implement Kruskal’s Algorithm using Union-Find.

Comparison - Prim’s vs Kruskal Algorithm

Compare Prim’s and Kruskal’s MST algorithms.

Number of Operations to Make Network Connected

Find the minimum operations to connect all computers in a network.

Cheapest Flight with K Stops

Find the cheapest flight within a limited number of stops.

Number of Ways to Arrive at Destination

Count the number of shortest paths to reach the destination.

Min Cost to Connect All Points

Connect all points with minimum total cost.

Learnings

🎯What You'll Master

Skills That Actually Get You Hired

"Every concept you learn here is something interviewers actively test for."

Arrays
Strings
Linked Lists
Doubly Linked List
Circular Linked List
Stacks
Queues
Priority Queue
Deque
Hash Maps
Hash Sets
Recursion
Backtracking
Binary Trees
Tree Traversals
Binary Search Trees
Heaps
Tries
Suffix Tree
Graphs
Adjacency List
Adjacency Matrix
BFS
DFS
Topological Sort
Cycle Detection
Union-Find
Disjoint Sets
Sorting Algorithms
Bubble Sort
Selection Sort
Insertion Sort
Merge Sort
Quick Sort
Counting Sort
Radix Sort
Bucket Sort
Searching Algorithms
Linear Search
Binary Search
Sliding Window
Two Pointers
Fast & Slow Pointers
Divide & Conquer
Greedy Algorithms
Dynamic Programming
Tabulation
Memoization
Bit Manipulation
Kadane’s Algorithm
Floyd’s Cycle Detection
Dutch National Flag
KMP Algorithm
Rabin Karp
LRU Cache
Top-K Elements
Subarrays
Subsets
Combinations
Permutations
Time Complexity
Space Complexity
Big-O Notation
Code Optimization
+And so much more…

Basically, I’ll teach you everything I’ve learned over the years from solving numerous problems to preparing for top tech interviews. Everything I know about Data Structures and Algorithms, distilled into one powerful course. ❤️

We’ll dive deep into each Data Structure and Algorithm by solving hundreds of problems no slides, no shortcuts just real coding, real logic, and hands-on learning. 🚀

We’ll start from absolute ZERO and build up to confidently solving even the most complex DSA questions. This is your journey from Zero to Hero in Data Structures and Algorithms. 😎

This is one of the few structured DSA courses in the industry that teaches you the why, how, and where behind every concept in a way that’s practical, intuitive, and interview-ready.

And yes, you’ll have lifetime access to all future content updates and bonus sessions as the series evolves!

Sounds cool, isn't it?

Perks & Benefits

Everything You Get

Packed With Value, Built For Results

"Not just a course - a complete ecosystem designed to take you from zero to job-ready."

High-quality DSA video lessons
Different Approaches to solve a same problem
Notes & cheat sheets
Pattern-based problem solving
Taught by Akshay Saini
Course completion certificate
Lifetime access & updates
Premium learner community
DSA from scratch
Debug & visualize algorithms
Bonus Session on Personal Branding
Bonus Session on LinkedIn Tips and Tricks
Bonus Session on Resume Building
Learn anytime, anywhere
7-day refund guarantee
Interview-style problems
Problem-solving techniques
Deep conceptual clarity
Bonus Session Salary Negotiation
Step-by-step walkthroughs

Instructor

akshay

Akshay Saini

// Founder - NamasteDev.com

Akshay Saini, founder of NamasteDev.com, who previously worked as a software engineer at Uber & Paytm. Akshay has over 10+ years of experience in the software industry and has been guiding students to become a better software Engineer. Well known for his famous playlist named Namaste JavaScript, he has taught over 20 lakhs+ students across the globe. All the concepts in this course are taught by Akshay himself.

Akshay is extremely mindful of the technical queries and obstacles faced by students aspiring towards a career in development. Drawing from his own experiences, he has crafted courses designed to offer a straightforward yet effective problem-solving methodology. As a mentor to over 20 lakh+ students, he has established a tech community that facilitates interaction among professionals across different levels of expertise.

20L+Students Taught
10+Years Experience
Uber & PaytmCompanies Worked At

Course Certificate

Verified Graduate

Earn the OfficialNamaste DSACourse Certificate

"Mastery is not a destination, but a continuous journey of excellence."

certificate-ribbon

Official Namaste DSA Course Certificate 🔥

Add this certificate to your Resume!

Share it with your LinkedIn network 🚀

certificate

Lifetime Access

lifetimeAccessElement
One-Time Purchase

Unlock Course For Life!

Enroll once and gain unlimited lifetime access to this course. No subscriptions, no renewals, no hidden fees. Learn at your own pace, revisit complex topics anytime, and stay updated with future additions - all at no extra cost.

No SubscriptionsFree Future UpdatesNo Hidden Fees

AI Resume Reviewer

free
AI Resume Reviewer
AI Powered

Get the AI Resume Reviewer absolutely FREE

Detailed resume analysis for tech roles
Constructive feedback & actionable suggestions
ATS compatibility check
Completely FREE for enrolled students

Notes

notesStamp
✦ Included with your course

Beautifully Curated Notes Just for You ❤️

Enhance your learning experience with thoughtfully designed, easy-to-read notes crafted to simplify complex concepts.

Enjoy the power of reading and watching videos together your satisfaction is our priority!

Note: Some episodes may not have notes yet - we're working hard to add them as soon as possible.

7 Days Refund Policy

refundStamp
100% Money Back Guarantee

Try It, Risk Free ❤️

We are confident you'll love this course. But if it's not the right fit, no worries! Get a refund within 7 days - No questions asked.

Our Testimonials

Top Companies Where Our Students Work

company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos
company-logos

And Many More...

Interview Stories

R
@ramraghunathan947

UPDATE: SERIOUSLY GOT A JOB BECAUSE OF THIS! Went to an interview. Interviewer: 'Write an example of closure.' Me: *Writes the example*. Interviewer: 'Namaste JavaScript? 🤔' Me: '😐'. Interviewer: 'Even I had the same example in mind!' We high-fived each other. Happily working ever after! 🧱

S
@sujeet4665

I was explaining Hoisting with a demo. Suddenly the interviewer said, 'You watched Namaste JavaScript videos, right?' I said yes. He said, 'OK, let's move to the next question. Your concept is clear. I study from there too!' You're trending, sir! 🚀

U
@unnatibamania3714

I had a JS interview a while ago and noticed most questions were straight from your series. This series is amazing; I've never felt JavaScript like this before! ✨

Frequently Asked Questions

Showing 1-10 of 27 questions

Namaste DSA is a comprehensive Data Structures and Algorithms course that takes you from zero to hero in DSA. It focuses on deep understanding of fundamental concepts through hands-on coding, visualization, and beginner-friendly explanations.

Yes, Namaste DSA starts from absolute zero and builds up gradually. The course begins with basic programming concepts like functions, loops, and conditionals, making it accessible even for those new to coding.

Namaste DSA allows you to choose your preferred programming language. The course is designed to teach concepts in a language-agnostic way, focusing on understanding algorithms and data structures rather than language syntax. Although the instructor uses JavaScript for code explanation.

The course covers all fundamental data structures including arrays, linked lists, stacks, queues, trees, binary search trees, heaps, graphs, hash tables, and advanced structures needed for coding interviews.

Namaste DSA covers searching, sorting, recursion, dynamic programming, greedy algorithms, backtracking, graph algorithms, string algorithms, and various problem-solving techniques essential for coding interviews.

Yes, Namaste DSA is specifically designed to help you crack DSA rounds at top companies. By the end of the course, you'll have the skills and confidence to approach coding interview problems with ease.

The course explains time and space complexity analysis for every algorithm and data structure. You'll learn Big O notation, how to analyze algorithm efficiency, and optimize solutions.

Yes, the course includes practice problems and challenges to test your understanding. After learning concepts, you'll solve problems to reinforce your learning and build problem-solving skills.

Every concept is broken down line by line with clear explanations on how it works, why it works, how to optimize it, finding complexity, and converting approach to code. The goal is to make you fall in love with algorithms.

Namaste DSA is an intensive course that demands time, consistency, and dedication. However, if you commit to it, the course can be a game-changer for your tech career and interview preparation.

Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.