INTERACTIVE COURSE

Intermediate

318 Lessons

70h

Certificate of Completion

Looking to Train your Team?

Empower your engineers to reach their potential faster.

Takeaway Skills

Understand the essential patterns behind common coding interview questions — without having to drill endless problem sets

Identify the underlying pattern of each interview question by assessing the problem statement (and learn the tricks required to solve it)

Practice your skills in a hands-on, setup-free coding environment

Learn to efficiently evaluate the tradeoffs between time and space complexity in different solutions

Develop a flexible conceptual framework for solving any question, by connecting problem characteristics, solution techniques, and coding design patterns

Understand the essential patterns behind common coding interview questions — without having to drill endless problem sets

Identify the underlying pattern of each interview question by assessing the problem statement (and learn the tricks required to solve it)

Practice your skills in a hands-on, setup-free coding environment

Learn to efficiently evaluate the tradeoffs between time and space complexity in different solutions

Develop a flexible conceptual framework for solving any question, by connecting problem characteristics, solution techniques, and coding design patterns

Course Overview

With thousands of potential questions to account for, preparing for the coding interview can feel like an impossible challenge. Yet with a strategic approach, coding interview prep doesn’t have to take more than a few weeks. Stop drilling endless sets of practice pr...

Course Contents

1

Getting Started

2 Lessons

2

Two Pointers

8 Lessons

Two Pointers: IntroductionValid PalindromeSolution: Valid PalindromeSum of Three ValuesSolution: Sum of Three Values

3

Fast and Slow Pointers

13 Lessons

Fast and Slow Pointers: IntroductionHappy NumberSolution: Happy NumberLinked List CycleSolution: Linked List Cycle

4

Sliding Window

14 Lessons

Sliding Window: IntroductionRepeated DNA SequencesSolution: Repeated DNA SequencesFind Maximum in Sliding WindowSolution: Find Maximum in Sliding Window

5

Merge Intervals

10 Lessons

Merge Intervals: IntroductionMerge IntervalsSolution: Merge IntervalsInsert IntervalSolution: Insert Interval

6

In-place Reversal of a Linked List

14 Lessons

In-place Reversal of a Linked List: IntroductionReverse Linked ListSolution: Reverse Linked ListReverse Nodes in k-GroupSolution: Reverse Nodes in k-Group

7

Two Heaps

9 Lessons

Two Heaps: IntroductionMaximize CapitalSolution: Maximize CapitalFind Median from a Data StreamSolution: Find Median from a Data Stream

8

K-way merge

12 Lessons

K-way Merge: IntroductionMerge Sorted ArraySolution: Merge Sorted ArrayKth Smallest Number in M Sorted ListsSolution: Kth Smallest Number in M Sorted Lists

9

Top K Elements

12 Lessons

Top K Elements: IntroductionKth Largest Element in a StreamSolution: Kth Largest Element in a StreamReorganize StringSolution: Reorganize String

10

Modified Binary Search

12 Lessons

Modified Binary Search: IntroductionSearch in Rotated Sorted ArraySolution: Search in Rotated Sorted ArrayFirst Bad VersionSolution: First Bad Version

11

Subsets

10 Lessons

12

Greedy Techniques

12 Lessons

Greedy Techniques: IntroductionJump Game ISolution: Jump Game IBoats to Save PeopleSolution: Boats to Save People

13

Backtracking

11 Lessons

14

Dynamic Programming

12 Lessons

15

Cyclic Sort

8 Lessons

Cyclic Sort: IntroductionMissing NumberSolution: Missing NumberFirst Missing PositiveSolution: First Missing Positive

16

Topological Sort

12 Lessons

Topological Sort: IntroductionCompilation OrderSolution: Compilation OrderAlien DictionarySolution: Alien Dictionary

17

Stacks

12 Lessons

Stacks: IntroductionBasic CalculatorSolution: Basic CalculatorRemove All Adjacent Duplicates In StringSolution: Remove All Adjacent Duplicates In String

18

Tree Depth First Search

12 Lessons

Tree Depth-first Search: IntroductionFlatten Binary Tree to Linked ListSolution: Flatten Binary Tree to Linked ListDiameter of Binary TreeSolution: Diameter of Binary Tree

19

Tree Breadth First Search

10 Lessons

Tree Breadth-first Search: IntroductionLevel Order Traversal of Binary TreeSolution: Level Order Traversal of Binary TreeBinary Tree Zigzag Level Order TraversalSolution: Binary Tree Zigzag Level Order Traversal

20

Trie

12 Lessons

Trie: IntroductionImplement TrieSolution: Implement TrieSearch Suggestions SystemSolution: Search Suggestions System

21

Hash Maps

12 Lessons

Hash Maps: IntroductionDesign HashMapSolution: Design HashMapFraction to Recurring DecimalSolution: Fraction to Recurring Decimal

22

Knowing What to Track

14 Lessons

Knowing What to Track: IntroductionPalindrome PermutationSolution: Palindrome PermutationDesign Tic-Tac-ToeSolution: Design Tic-Tac-Toe

23

Union Find

12 Lessons

Union Find: IntroductionRedundant ConnectionSolution: Redundant ConnectionNumber of IslandsSolution: Number of Islands

24

Custom Data Structures

12 Lessons

Custom Data Structures: IntroductionSnapshot ArraySolution: Snapshot ArrayTime-Based Key-Value StoreSolution: Time-Based Key-Value Store

25

Bitwise Manipulation

12 Lessons

Bitwise Manipulation: IntroductionFind the DifferenceSolution: Find the DifferenceComplement of Base 10 NumberSolution: Complement of Base 10 Number

26

Challenge Yourself

38 Lessons

Challenge Yourself: IntroductionShortest BridgeNumber of Connected Components in an Undirected GraphPacific Atlantic Water FlowContains Duplicate

27

Conclusion

1 Lesson

COURSE AUTHOR(S)

How You'll Learn

You don’t get better at swimming by watching others. Coding is no different. Practice as you learn with live code environments inside your browser.

Videos are holding you back. The average video tutorial is spoken at 150 words per minute, while you can read at 250. That‘s why our courses are text-based.

Start learning immediately instead of fiddling with SDKs and IDEs. It‘s all on the cloud.

Built in assessments let you test your skills. Completion certificates let you show them off.

You don’t get better at swimming by watching others. Coding is no different. Practice as you learn with live code environments inside your browser.

Videos are holding you back. The average video tutorial is spoken at 150 words per minute, while you can read at 250. That‘s why our courses are text-based.

Start learning immediately instead of fiddling with SDKs and IDEs. It‘s all on the cloud.

Built in assessments let you test your skills. Completion certificates let you show them off.

Recommended Courses

BEFORE STARTING THIS COURSE

AFTER FINISHING THIS COURSE

Trusted by 1.4 million developers working at companies including