UDEMY
UDEMY Logo

JavaScript Algorithms and Data Structures Masterclass 

  • Offered byUDEMY

JavaScript Algorithms and Data Structures Masterclass
 at 
UDEMY 
Overview

Gain a comprehensive overview of the JavaScript Algorithms principles and concepts

Duration

22 hours

Total fee

3,499

Mode of learning

Online

Credential

Certificate

JavaScript Algorithms and Data Structures Masterclass
 at 
UDEMY 
Highlights

  • Earn a certificate of completion from Udemy
  • Learn from 80 downloadable resources & 32 articles
  • Get full lifetime access of the course material
  • Comes with 30 days money back guarantee
Read more
Details Icon

JavaScript Algorithms and Data Structures Masterclass
 at 
UDEMY 
Course details

Who should do this course?
  • For Anyone preparing for programming interviews
  • For Anyone interested in improving their problem solving skills
  • For Anyone looking to become a better developer!
What are the course deliverables?
  • Learn everything you need to ace difficult coding interviews
  • Master dozens of popular algorithms, including 6 sorting algorithms!
  • Implement 10+ data structures from scratch
  • Improve your problem solving skills and become a stronger developer
More about this course
  • This course crams months of computer science and interview prep material into 20 hours of video
  • We cover the ins and outs of Recursion
  • We learn a 5-step approach to solving any difficult coding problem
  • We cover common programming patterns
  • We write 6 different sorting algorithms: Bubble, Selection, Insertion, Quick, Merge, and Radix Sort

JavaScript Algorithms and Data Structures Masterclass
 at 
UDEMY 
Curriculum

Introduction

Curriculum Walkthrough

What Order Should You Watch In?

How I'm Running My Code

Big O Notation

Intro to Big O

Timing Our Code

Counting Operations

Visualizing Time Complexities

Official Intro to Big O

Simplifying Big O Expressions

Space Complexity

Logs and Section Recap

Analyzing Performance of Arrays and Objects

PREREQUISITES

Section Introduction

The BIG O of Objects

When are Arrays Slow?

Big O of Array Methods

Problem Solving Approach

PREREQUISITES

Introduction to Problem Solving

Step 1: Understand The Problem

Step 2: Concrete Examples

Step 3: Break It Down

Step 4: Solve Or Simplify

Step 5: Look Back and Refactor

Recap and Interview Strategies

Problem Solving Patterns

PREREQUISITES

Intro to Problem Solving Patterns

Frequency Counter Pattern

Frequency Counter: Anagram Challenge

Anagram Challenge Solution

Multiple Pointers Pattern

Multiple Pointers: Count Unique Values Challenge

Count Unique Values Solution

Sliding Window Pattern

Divide And Conquer Pattern

100% OPTIONAL Challenges

IMPORTANT NOTE!

SOLUTIONS PART 1

SOLUTIONS PART 2

SOLUTIONS PART 3

Recursion

PREREQUISITES

Story Time: Martin & The Dragon

Why Use Recursion?

The Call Stack

Our First Recursive Function

Our Second Recursive Function

Writing Factorial Iteratively

Writing Factorial Recursively

Common Recursion Pitfalls

Helper Method Recursion

Pure Recursion

Recursion Problem Set

START HERE!

SOLUTIONS FOR THIS SECTION

Bonus CHALLENGING Recursion Problems

NOTE ON THIS SECTION

SOLUTIONS PART 1

SOLUTIONS PART 2

Searching Algorithms

PREREQUISITES

Intro to Searching

Intro to Linear Search

Linear Search Solution

Linear Search BIG O

Intro to Binary Search

Binary Search PseudoCode

Binary Search Solution

Binary Search BIG O

Naive String Search

Naive String Search Implementation

KNP COMING SOON

Bubble Sort

PREREQUISITES

Introduction to Sorting Algorithms

Built-In JavaScript Sorting

Bubble Sort: Overview

Bubble Sort: Implementation

Bubble Sort: Optimization

Bubble Sort: BIG O Complexity

Selection Sort

PREREQUISITES

Selection Sort: Introduction

Selection Sort: Implementation

Selection Sort: Big O Complexity

Insertion Sort

PREREQUISITES

Insertion Sort: Introduction

Insertion Sort: Implementation

Insertion Sort: BIG O Complexity

Comparing Bubble, Selection, and Insertion Sort

Comparing Bubble, Selection, and Insertion Sort

Merge Sort

PREREQUISITES

Intro to the "Crazier" Sorts

Merge Sort: Introduction

Merging Arrays Intro

Merging Arrays: Implementation

Writing Merge Sort Part 1

Writing Merge Sort Part 2

Merge Sort BIG O Complexity

Quick Sort

PREREQUISITES

Introduction to Quick Sort

Pivot Helper Introduction

Pivot Helper Implementation

Quick Sort Implementation

Quick Sort Call Stack Walkthrough

Quick Sort Big O Complexity

Radix Sort

PREREQUISITES

Radix Sort: Introduction

Radix Sort: Helper Methods

Radix Sort: Pseudocode

Radix Sort: Implementation

Radix Sort: BIG O Complexity

Data Structures Introduction

Which Data Structure Is The Best?

ES2015 Class Syntax Overview

Data Structures: The Class Keyword

Data Structures: Adding Instance Methods

Data Structures: Adding Class Methods

Singly Linked Lists

PREREQUISITES

Intro to Singly Linked Lists

Starter Code and Push Intro

Singly Linked List: Push Solution

Singly Linked List: Pop Intro

Singly Linked List: Pop Solution

Singly Linked List: Shift Intro

Singly Linked List: Shift Solution

Singly Linked List: Unshift Intro

Singly Linked List: Unshift Solution

Singly Linked List: Get Intro

Singly Linked List: Get Solution

Singly Linked List: Set Intro

Singly Linked List: Set Solution

Singly Linked List: Insert Intro

Singly Linked List: Insert Solution

Singly Linked List: Remove Intro

Singly Linked List: Remove Solution

Singly Linked List: Reverse Intro

Singly Linked List: Reverse Solution

Singly Linked List: BIG O Complexity

Doubly Linked Lists

PREREQUISITES

Doubly Linked Lists Introduction

Setting Up Our Node Class

Push

Push Solution

Pop

Pop Solution

Shift

Shift Solution

Unshift

Unshift Solution

Get

Get Solution

Set

Set Solution

Insert

Insert Solution

Remove

Remove Solution

Comparing Singly and Doubly Linked Lists

Stacks + Queues

PREREQUISITES

Intro to Stacks

Creating a Stack with an Array

Writing Our Own Stack From Scratch

BIG O of Stacks

Intro to Queues

Creating Queues Using Arrays

Writing Our Own Queue From Scratch

BIG O of Queues

Binary Search Trees

PREREQUISITES

Introduction to Trees

Uses For Trees

Intro to Binary Trees

POP QUIZ!

Searching A Binary Search Tree

Our Tree Classes

BST: Insert

BST: Insert Solution

BST: Find

BST: Find Solution

Big O of Binary Search Trees

Tree Traversal

PREREQUISITES

Intro To Tree Traversal

Breadth First Search Intro

Breadth First Search Solution

Depth First PreOrder Intro

Depth First PreOrder Solution

Depth First PostOrder Intro

Depth First PostOrder Solution

Depth First InOrder Intro

Depth First InOrder Solution

When to Use BFS and DFS

Binary Heaps

PREREQUISITES

Intro to Heaps

Storing Heaps

Heap: Insert Intro

Heap: Insert Solution

Heap: ExtractMax Intro

Heap: ExtractMax Solution

Priority Queue Intro

Priority Queue Pseudocode

Priority Queue Solution

BIG O of Binary Heaps

Hash Tables

PREREQUISITES

Intro to Hash Tables

More About Hash Tables

Intro to Hash Functions

Writing Our First Hash Function

Improving Our Hash Function

Handling Collisions

Hash Table Set and Get

Hash Table Set Solution

Hash Table Get Solution

Hash Table Keys and Values

Hash Table Keys and Values Solution

Hash Table Big O Complexity

Graphs

PREREQUISITES

Intro to Graphs

Uses for Graphs

Types of Graphs

Storing Graphs: Adjacency Matrix

Storing Graphs: Adjacency List

Adjacency Matrix Vs. List BIG O

Add Vertex Intro

Add Vertex Solution

Add Edge Intro

Add Edge Solution

Remove Edge Intro

Remove Edge Solution

Remove Vertex Intro

Remove Vertex Solution

Graph Traversal

PREREQUISITES

Intro to Graph Traversal

Depth First Graph Traversal

DFS Recursive Intro

DFS Recursive Solution

DFS Iterative Intro

DFS Iterative Solution

Breadth First Graph Traversal

BFS Intro

BFS Solution

Dijkstra's Algorithm!

PREREQUISITES

Intro to Dijkstra's and Prerequisites

Who was Dijkstra and what is his Algorithm?

Writing a Weighted Graph

Walking through the Algorithm

Introducing Our Simple Priority Queue

Dijkstra's Pseudo-Code

Implementing Dijkstra's Algorithm

Upgrading the Priority Queue

Dynamic Programming

Intro to Dynamic Programming

Overlapping Subproblems

Optimal Substructure

Writing A Recursive Solution

Time Complexity of Our Solution

The Problem With Our Solution

Enter Memoization!

Time Complexity of Memoized Solution

Tabulation: A Bottom Up Approach

THE END!

The Wild West

VERY IMPORTANT NOTE! PLEASE READ!

Faculty Icon

JavaScript Algorithms and Data Structures Masterclass
 at 
UDEMY 
Faculty details

Colt Steele
He is a developer with a serious love for teaching. He has spent the last few years teaching people to program at 2 different immersive bootcamps where he has helped hundreds of people become web developers and change their lives.

Other courses offered by UDEMY

549
50 hours
– / –
3 K
10 hours
– / –
549
4 hours
– / –
599
10 hours
– / –
View Other 2344 CoursesRight Arrow Icon
qna

JavaScript Algorithms and Data Structures Masterclass
 at 
UDEMY 

Student Forum

chatAnything you would want to ask experts?
Write here...