Skip to main content
CF

70+ JavaScript Challenges: Data Structures & Algorithms

12h 29m 29s
English
Paid

Build strong problem‑solving skills as you work through clear JavaScript challenges. You will write code, test ideas, and shape your understanding of key data structures and algorithms. You will also explore recursion, complexity, and other core computer science tools that help you think through hard problems.

What You Will Learn

  • Work through each challenge or follow along with guided steps
  • Solve problems with loops, recursion, and array methods
  • Understand time and space complexity
  • Build data structures like stacks, queues, linked lists, trees, and graphs
  • Use depth‑first and breadth‑first search on trees and graphs
  • Practice sorting methods such as bubble sort and merge sort
  • Write and test code in a sandbox with Jest

About the Author: Brad Traversy

Brad Traversy thumbnail

Brad Traversy is a US developer behind Traversy Media — one of the largest independent web-development YouTube channels, with millions of subscribers and one of the most-viewed introductory tutorial libraries on the platform. He has been publishing daily-or-near-daily web development content continuously for nearly a decade and has anchored a generation of self-taught developers' first exposure to HTML, CSS, JavaScript, and the modern framework landscape.

The course catalog (sold via Udemy and the standalone Traversy platform) covers the full web-development stack: HTML and CSS fundamentals, JavaScript, React (including Next.js), Vue, Node.js, Express, MongoDB, full-stack MERN applications, Tailwind CSS, modern CSS layout, and the surrounding tooling. Brad's teaching style is calm, patient, and deliberately accessible to absolute beginners.

The CourseFlix listing under this source carries over 17 Brad Traversy courses spanning that range. Material is paid and aimed primarily at self-taught developers building real proficiency with web development from a clean start.

Watch Online 114 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 114 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Welcome To The Course
All Course Lessons (114)
#Lesson TitleDurationAccess
1
Welcome To The Course Demo
03:24
2
Course Structure
04:19
3
DSA - What & Why
06:56
4
Tools & Basic Setup
05:36
5
Sandbox Files Setup & Explanation
06:28
6
Hello World (Starter Challenge)
01:58
7
Get Sum (Starter Challenge)
02:03
8
Calculator
05:45
9
Count Occurences
07:44
10
Find Max Number
03:44
11
Title Case
05:25
12
Reverse String
07:20
13
Palindrome
14:27
14
Count Vowels
03:08
15
Remove Duplicates
05:31
16
FizzBuzz Array
05:42
17
Array Intersection
05:56
18
Display Likes
04:57
19
Find Missing Number
06:18
20
Find Missing Letter
07:43
21
Are All Characters Unique
07:14
22
First Non-Repeating Character
07:52
23
Dice Game Simulation
06:33
24
Format Phone Number
09:20
25
Validate Email
09:16
26
Simple Examples
13:32
27
Sum Of Even Squares
04:54
28
Calculate Total Sales
06:05
29
Highest Scoring Word
10:38
30
Valid Anagrams
07:12
31
Hashtag Generator
10:32
32
Valid IPv4
04:28
33
Analyze Car Milage
07:46
34
Password Validator
06:19
35
Find Missing Letter Refactor
10:36
36
Recursion Intro (Countdown)
06:56
37
Recursive Unwinding (Sum Up To)
05:50
38
Reverse String Using Recursion
07:35
39
Fibonacci Sequence
10:41
40
Factorial
06:38
41
Power
05:49
42
Array Sum
05:54
43
Number Range
04:44
44
Flatten Array
04:01
45
Permutations
07:29
46
What Is Time Complexity?
05:31
47
Big O Notation
05:42
48
Constant Time Complexity
05:20
49
Linear Time Complexity
05:25
50
Quadratic Time Complexity
04:27
51
Logarithmic Time Complexity
04:57
52
Space Complexity
06:25
53
Max Subarray - Quadratic
08:21
54
Sliding Window Technique
04:10
55
Max Subarray - Linear
06:50
56
Hash Table Intro
03:54
57
Maps
09:52
58
Word Frequency Counter
05:36
59
Phone Number Directory
02:42
60
Anagram Grouping
05:39
61
Sets
05:29
62
Symmetric Difference
04:47
63
Two Sum
05:36
64
Longest Consecutive
06:27
65
Custom Hash Table - Init, Set & Print
18:44
66
Custom Hash Table - Get, Remove & Has
11:24
67
Word Instance Counter With Custom Hash Table
05:54
68
Add getValues Method
03:28
69
Anagram Grouping With Custom Hash Table
05:50
70
What Is A Stack?
02:25
71
Stack Implementation
10:32
72
Reverse String Using A Stack
04:05
73
Balanced Parenthesis
04:29
74
What Is A Queue?
02:20
75
Queue Implementation
07:24
76
Reverse String Using A Queue
03:40
77
Palindrome Using A Queue & Stack
07:49
78
What Is A Linked List?
04:09
79
Linked List Implementation
14:18
80
Reverse String Using A Linked List
03:55
81
Fast & Slow Pointers
05:52
82
Find Middle
07:13
83
What Is A Doubly Linked List?
02:48
84
Doubly Linked List Implementation - Part 1
14:28
85
Doubly Linked List implementation - Part 2
10:18
86
Find Pair Sum
04:11
87
What Is A Tree / Binary Tree?
06:28
88
Tree Node Class
05:00
89
Depth-First Traversal
13:04
90
Depth-First Traversal With Recursion
04:18
91
Breadth-First Traversal
08:56
92
Maximum Depth
06:53
93
What Is A Binary Search Tree?
08:27
94
Binary Search Tree Implementation - Part 1
10:51
95
Binary Search Tree Implementation - Part 2
14:24
96
Validate BST
11:23
97
What Is A Graph?
03:42
98
Adjacency Matrix & Adjacency List
04:30
99
Graph Implementation
11:24
100
Graph Traversal Visualization
05:52
101
Graph Depth-First Traversal
09:56
102
Graph Breadth-First Traversal
06:17
103
What Are Sorting Algorithms?
02:48
104
Bubble Sort Algorithm
02:47
105
Bubble Sort Implementation
08:01
106
Insertion Sort Algorithm
02:44
107
Insertion Sort Implementation
06:25
108
Selection Sort Algorithm
03:29
109
Selection Sort Implementation
06:44
110
Merge Sort Algorithm
02:00
111
Merge Sort Implementation
08:27
112
Quick Sort Algorithm
02:51
113
Quick Sort Implmentation
05:27
114
Wrap Up
01:37
Unlock unlimited learning

Get instant access to all 113 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

Frequently asked questions

What prerequisites are needed for this course?
Prospective students should have a basic understanding of JavaScript and programming fundamentals. Familiarity with writing and testing code, as well as basic problem-solving skills, will help you navigate the challenges effectively. The course is designed to build on existing knowledge, so a grasp of loops, functions, and basic data handling in JavaScript is recommended.
What types of projects will I build in this course?
The course focuses on solving specific algorithmic challenges rather than building large projects. You will engage in exercises such as creating a calculator, validating emails, simulating a dice game, and generating hashtags. These challenges help reinforce core concepts in data structures and algorithms, including recursion and complexity analysis.
Who is the target audience for this course?
This course is suited for individuals looking to strengthen their problem-solving skills using JavaScript. It is particularly beneficial for aspiring software developers, computer science students, and professionals preparing for technical interviews that focus on data structures and algorithmic challenges.
How does this course differ from other JavaScript courses?
Unlike traditional JavaScript courses that might focus on language syntax or web development, this course emphasizes data structures, algorithms, and problem-solving. It includes challenges on recursion, time and space complexity, and sorting methods, providing a more computer science-oriented approach to learning JavaScript.
What specific tools or platforms will I use during the course?
The course utilizes a sandbox environment for writing and testing code, specifically using Jest for testing. This setup allows you to immediately apply and test your solutions to the challenges, providing instant feedback on your code's effectiveness.
What topics are not covered in this course?
The course does not cover advanced web development topics, frameworks like React or Angular, or JavaScript's role in frontend or backend development. It is strictly focused on data structures, algorithms, and core computer science concepts.
How much time should I expect to commit to this course?
With 114 lessons focusing on various challenges and concepts, students should allocate ample time to work through each problem thoroughly. The time commitment may vary based on individual pace, but expect to spend several hours a week to fully engage with the material and practice problem-solving skills effectively.