Course Highlights
  • Ace coding interviews given by some of the top tech companies
  • Become more confident and prepared for your next coding interview
  • Learn, implement, and use different Data Structures
  • Learn, implement and use different Algorithms
  • Get more interviews
  • Professionally handle offers and negotiate raises
  • Become a better developer by mastering computer science fundamentals
Curriculum

5 Topics
How To Succeed In This Course
Join Our Online Classroom!
Exercise: Meet Your Classmates & Instructor
ZTM Resources
Monthly Coding Challenges Free Resources and Guides

19 Topics
Section Overview
Resume
Exercise: Resume Walkthrough
Resume Review
Resources: Resume Templates
What If I Don't Have Enough Experience?
Optional Exercise: Github Master
Optional: Exercise: Github README
LinkedIn
Optional Exercise: LinkedIn Endorsements
Portfolio
Resources: Free Portfolio Templates
Email
Resources: Email
Where To Find Jobs?
Resources: Where To Find Jobs?
When Should You Start Applying?
Section Summary
Monthly Industry Updates

28 Topics
Python Java C/C++ C# Golang Swift Kotlin TypeScript Scala Perl Code
Setting Up Your Environment
Section Overview
Big O Cheatsheet
IMPORTANT: Repl Code
What Is Good Code?
Big O and Scalability
O(n)
O(1)
Exercise: Big O Calculation
Solution: Big O Calculation
Exercise: Big O Calculation 2
Solution: Big O Calculation 2
Simplifying Big O
Big O Rule 1
Big O Rule 2
Big O Rule 3
O(n^2)
Big O Rule 4
Big O Cheat Sheet
What Does This All Mean?
O(n!)
3 Pillars Of Programming
Space Complexity
Exercise: Space Complexity
Exercise: Twitter
Optional: Javascript Loops
Section Summary

9 Topics
Section Overview
What Are Companies Looking For?
What We Need For Coding Interviews
Exercise: Google Interview
Exercise: Interview Question
Exercise: Interview Question 2
Review Google Interview
Optional Exercise: Google Interview On Your Own
Section Summary

5 Topics
Section Overview
What Is A Data Structure?
How Computers Store Data
Data Structures In Different Languages
Operations On Data Structures

12 Topics
Arrays Introduction
Static vs Dynamic Arrays
Quick Note: Upcoming Video
Optional: Classes In Javascript
Implementing An Array
Strings and Arrays
Exercise: Reverse A String
Solution: Reverse A String
Exercise: Merge Sorted Arrays
Solution: Merge Sorted Arrays
Interview Questions: Arrays
Arrays Review

13 Topics
Hash Tables Introduction
Hash Function
Hash Collisions
Hash Tables In Different Languages
Exercise: Implement A Hash Table
Solution: Implement A Hash Table
keys()
Extra: keys() Without Collision
Hash Tables VS Arrays
Exercise: First Recurring Character
Solution: First Recurring Character
Interesting Tidbit: Python Dictionaries
Hash Tables Review

21 Topics
Linked Lists Introduction
What Is A Linked List?
Exercise: Imposter Syndrome
Exercise: Why Linked Lists?
Solution: Why Linked Lists?
What Is A Pointer?
Our First Linked List
Solution: append()
Solution: prepend()
Node Class
insert()
Quick Note: Upcoming Video
Solution: insert()
Solution: remove()
Doubly Linked Lists
Exercise: Doubly Linked Lists
Solution: Doubly Linked Lists
Singly VS Doubly Linked Lists
Exercise: reverse()
Solution: reverse()
Linked Lists Review

15 Topics
Stacks + Queues Introduction
Stacks
Queues
Exercise: Stacks VS Queues
Solution: Stacks VS Queues
Quick Note: Upcoming Video
Optional: How Javascript Works
Exercise: Stack Implementation (Linked Lists)
Solution: Stack Implementation (Linked Lists)
Exercise: Stack Implementation (Array)
Solution: Stack Implementation (Array)
Exercise: Queue Implementation
Solution: Queue Implementation
Queues Using Stacks
Stacks + Queues Review

18 Topics
Trees Introduction
Binary Trees
O(log n)
Binary Search Trees
Balanced VS Unbalanced BST
BST Pros and Cons
Exercise: Binary Search Tree
Solution: insert()
Solution: lookup()
Extra Exercise: remove()
Solution: remove()
AVL Trees + Red Black Trees
Resources: AVL Trees + Red Black Trees
Binary Heaps
Quick Note on Heaps
Priority Queue
Trie
Tree Review

9 Topics
Graphs Introduction
Types Of Graphs
Exercise: Guess The Graph
Graph Data
Exercise: Graph Implementation
Solution: Graph Implementation
Graphs Review
Data Structures Review
What Else Is Coming Up?

12 Topics
Introduction to Algorithms
Recursion Introduction
Stack Overflow
Anatomy Of Recursion
Exercise: Factorial
Solution: Factorial
Exercise: Fibonacci
Solution: Fibonacci
Recursive VS Iterative
When To Use Recursion
Exercise: Reverse String With Recursion
Recursion Review

27 Topics
Sorting Introduction
The Issue With sort()
Sorting Algorithms
Bubble Sort
Exercise: Bubble Sort
Solution: Bubble Sort
Selection Sort
Exercise: Selection Sort
Solution: Selection Sort
Dancing Algorithms
Insertion Sort
Exercise: Insertion Sort
Solution: Insertion Sort
Merge Sort and O(n log n)
Exercise: Merge Sort
Solution: Merge Sort
Stable VS Unstable Algorithms
Quick Sort
Optional Exercise: Quick Sort
Which Sort Is Best?
Resources: Heap Sort
Radix Sort + Counting Sort
Resources: Radix Sort + Counting Sort
Exercise: Sorting Interview
Solution: Sorting Interview
Sorting In Your Language
Sorting Review

20 Topics
Searching + Traversal Introduction
Linear Search
Binary Search
Graph + Tree Traversals
BFS Introduction
DFS Introduction
BFS vs DFS
Resources: BFS vs DFS
Exercise: BFS vs DFS
Solution: BFS vs DFS
breadthFirstSearch()
breadthFirstSearchRecursive()
PreOrder InOrder PostOrder
depthFirstSearch()
Optional Exercise: Validate A BST
Graph Traversals
BFS in Graphs
DFS in Graphs
Dijkstra + Bellman-Ford Algorithms
Searching + Traversal Review

8 Topics
Dynamic Programming Introduction
Memoization 1
Memoization 2
Fibonacci and Dynamic Programming
Dynamic Programming
Implementing Dynamic Programming
Interview Questions: Dynamic Programming
Dynamic Programming Review

15 Topics
Section Overview
During The Interview
Exercise: Hero Stories
Tell Me About Yourself
Exercise: Your Pitch
Why Us?
Tell Me About A Problem You Have Solved
Exercise: Past Projects
What Is Your Biggest Weakness
Exercise: Your Biggest Weakness
Any Questions For Us?
Resources: Questions To Ask A Company
Secret Weapon
After The Interview
Section Summary

8 Topics
Section Overview
Handling Rejection
Negotiation 101
Handling An Offer
Handling Multiple Offers
Getting A Raise
Exercise: Negotiation Master
Section Summary

3 Topics
Become an Alumni
Thank You.
What You Can Do Now

6 Topics
Coding Problems
Top Interview Questions
Amazon Interview Questions
Facebook Interview Questions
Google Interview Questions
Domain Specific Questions

3 Topics
Contributing To Open Source
Contributing To Open Source 2
Exercise: Contribute To Open Source

9 Topics
Learning Guideline
Quick Note: Upcoming Videos
From JTS: Learn to Learn
From JTS: Start With Why
Coding Challenges
How To Use Leetcode
AMA - 100000 Students!!
Course Review
The Final Challenge

1 Topic
Special Bonus Lecture

  Write a Review

Master the Coding Interview: Data Structures + Algorithms

Go to Paid Course