09-07-2023, 01:07 PM
70+ Javascript Challenges: Data Structures & Algorithms
Published 9/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 5.58 GB | Duration: 12h 28m
Build better foundational skills as a developer by doing challenges and learning about data structures and algorithms
What you'll learn
Explore 70+ coding challenges from beginner, intermediate and advanced levels
Ace coding interviews by learning how to solve problems with iteration, recursion, array methods & more
Master data structures like stacks, queues, linked lists, trees, maps and hash maps
Learn about sorting algorithms like bubble sort, insertion, merge and quick sort
Full sandbox with explanations and Jest tests for every challenge
You do NOT have to take on the challenges alone. Follow along and learn from the explanations
Requirements
You should know JavaScript & programming fundamentals
Description
Most of my students know me for my practical, project-based courses and tutorials. I wanted to create something to give you more fundamental skills for problem solving. That's where the idea for this challenges course came from. I want to take my down-to-earth explanations to help you get a better understanding of the code that you write and help you write more efficient code.This course is for all levels as long as you have a basic understanding of things like loops, functions, arrays, etc. We are writing JavaScript in this course, but about 95% of it can translate to any other language. So even if you are a Python, PHP or C# developer, you can still follow along.Basic Challenges:We start with a bunch of basic challenges that have to do with iteration and loops. Things like FizzBuzz and string reversals. These are very popular questions for entry-level interviews. We also move on to solving problems with high order array methods like filter and map.Recursion:Recursion is one of the toughest things to learn in programming. We have an entire section dedicated to it with challenges that we solve using recursion.Time & Space Complexity:We talk about how to measure an algorithm or function's efficiency by using time and space complexity to see how the runtime and memory scale when inscreasing the input.Data Structures: Stacks, Queues, Trees, Linked Lists, Graphs, HashMapsWe go over all of the common data structures and create our own implementation of them using JavaScript classes, but like I said, you could use any language. We also learn how to traverse them and complete challenges using them.Sorting Algorithms:We get into different sorting algorithms like bubble sort, insertion, selection, merge and quick sort. These are popular topics for interviews.
Overview
Section 1: Introduction
Lecture 1 Welcome To The Course
Lecture 2 Course Structure
Lecture 3 DSA - The What & Why
Lecture 4 Tools & Basic Setup
Lecture 5 Sandbox Environment Setup
Section 2: Basic Challenges - Part 1
Lecture 6 Hello World (Starter Challenge)
Lecture 7 Get Sum (Starter Challenege)
Lecture 8 Calculator
Lecture 9 Count Occurences
Lecture 10 Find Max Number
Lecture 11 Title Case
Lecture 12 Reverse String
Lecture 13 Palindrome
Lecture 14 Count Vowels
Lecture 15 Remove Duplicates
Section 3: Basic Challenges - Part 2
Lecture 16 FizzBuzz Array
Lecture 17 Array Intersection
Lecture 18 Display Likes
Lecture 19 Find Missing Number
Lecture 20 Find Missing Letter
Lecture 21 Are All Chars Unique?
Lecture 22 First Non-Repeating Character
Lecture 23 Dice Game Simulation
Lecture 24 Format Phone Number
Lecture 25 Validate Email
Section 4: High Order Array Methods
Lecture 26 Simple Examples
Lecture 27 Sum Of Even Squares
Lecture 28 Calculate Total Sales
Lecture 29 Highest Scoring Word
Lecture 30 Valid Anagrams
Lecture 31 Hashtag Generator
Lecture 32 Valid IPv4
Lecture 33 Analyze Car Mileage
Lecture 34 Password Validator
Lecture 35 Find Missing Letter Refactor
Section 5: Recursion
Lecture 36 Recursion Intro (Countdown)
Lecture 37 Recursive Unwinding
Lecture 38 Reverse String Using Recursion
Lecture 39 Fibonacci Sequence
Lecture 40 Factorial
Lecture 41 Power
Lecture 42 Array Sum
Lecture 43 Number Range
Lecture 44 Flatten Array
Lecture 45 Permutations
Section 6: Time & Space Complexity
Lecture 46 What Is Time Complexity?
Lecture 47 Big O Notation
Lecture 48 Constant Time Complexity - O(1)
Lecture 49 Linear Time Complexity - O(n)
Lecture 50 Quadratic Time Complexity - O(n^2)
Lecture 51 Logarithmic Time Complexity - O(log n)
Lecture 52 Space Complexity
Lecture 53 Max Subarray - Quadratic
Lecture 54 Sliding Window Technique
Lecture 55 Max Subarray - Linear
Section 7: Hash Tables, Maps & Sets
Lecture 56 Hash Table Intro
Lecture 57 Maps
Lecture 58 Word Frequency Counter
Lecture 59 Phone Number Directory
Lecture 60 Anagram Grouping
Lecture 61 Sets
Lecture 62 Symmetric Difference
Lecture 63 Two Sum
Lecture 64 Longest Consecutive
Lecture 65 Custom Hash Table - Part 1
Lecture 66 Custom Hash Table - Part 2
Lecture 67 Word Instance Counter Using Custom Hash Table
Lecture 68 Add getValues Method
Lecture 69 Anagram Grouping With Custom Hash Table
Section 8: Stacks, Queues & Linked Lists
Lecture 70 What Is A Stack?
Lecture 71 Stack Implementation
Lecture 72 Reverse String Using A Stack
Lecture 73 Balanced Parenthesis
Lecture 74 What Is A Queue?
Lecture 75 Queue Implementation
Lecture 76 Reverse String With A Queue
Lecture 77 Palindrome With A Queue & Stack
Lecture 78 What Is A LInked LIst?
Lecture 79 Linked List Implementation
Lecture 80 Reverse String With A Linked List
Lecture 81 Fast & Slow Pointers
Lecture 82 Find Middle
Lecture 83 What Is A Doubly Linked List?
Lecture 84 Doubly Linked List Implementation - Part 1
Lecture 85 Doubly Linked List Implementation - Part 2
Lecture 86 Find Pair Sum
Section 9: Binary Trees, BST & Graphs
Lecture 87 What Is a Tree / Binary Tree?
Lecture 88 Tree Node Class
Lecture 89 Depth-First Traversal
Lecture 90 Depth-First Traversal Using Recursion
Lecture 91 Breadth-First Traversal
Lecture 92 Maximum Depth
Lecture 93 What Is A Binary Search Tree?
Lecture 94 Binary Search Tree Implementation - Part 1
Lecture 95 Binary Search Tree Implementation - Part 2
Lecture 96 Validate BST
Lecture 97 What Is A Graph?
Lecture 98 Adjacency Matrix & Adjacency List
Lecture 99 Graph Implementation
Lecture 100 Graph Traversal Visualization
Lecture 101 Graph Depth-First Traversal
Lecture 102 Graph Breadth-First Traversal
Section 10: Sorting Algorithms
Lecture 103 What Are Sorting Algorithms?
Lecture 104 Bubble Sort Algorithm
Lecture 105 Bubble Sort Implementation
Lecture 106 Insertion Sort Algorithm
Lecture 107 Insertion Sort Implementation
Lecture 108 Selection Sort Algorithm
Lecture 109 Selection Sort Implementation
Lecture 110 Merge Sort Algorithm
Lecture 111 Merge Sort Implementation
Lecture 112 Quick Sort Algorithm
Lecture 113 Quick Sort Implementation
Section 11: Wrap Up
Lecture 114 Wrap Up
Developers that want to build better foundational problem solving skills and pass job interviews
70+ JavaScript Challenges Data Structures & Algorithms (5.58 GB)
KatFile Link(s)
RapidGator Link(s)