This course includes

155 Playgrounds

51 Challenges

17 Quizzes

Course Overview

With algorithms being arguably the most common theme in coding interviews, having a firm grip on them can be the difference between being hired and not. After this comprehensive course, you'll have an in-depth understanding of different algorithm types and be equipped with a simple process for approaching complexity analysis. As you progress, you’ll be exposed to the most important algorithms you're likely to encounter on an interview, work your way through over 50 interactive coding challenges, and review...

Course Content

1.

Introduction

2.

Algorithmic Paradigms

3.

Introduction to Complexity Measures

Comparing AlgorithmsExample 1: Measuring Time Complexity of a Single Loop AlgorithmExample 2: Time Complexity of an Algorithm With Nested LoopsIntroduction to Asymptotic Analysis and Big OOther Common Asymptotic Notations and Why Big O Trumps ThemUseful FormulaeCommon Complexity ScenariosChallenge 1: Big (O) of Nested Loop with AdditionSolution Review: Big (O) of Nested Loop with AdditionChallenge 2: Big (O) of Nested Loop with SubtractionSolution Review: Big (O) of Nested Loop with SubtractionChallenge 3: Big (O) of Nested Loop with MultiplicationSolution Review: Big (O) of Nested Loop with MultiplicationChallenge 4: Nested Loop with Multiplication (Basic)Solution Review: Nested Loop with Multiplication (Basic)Challenge 5: Nested Loop with Multiplication (Intermediate)Solution Review: Nested Loop with Multiplication (Intermediate)Challenge 6: Nested Loop with Multiplication (Advanced)Solution Review: Nested Loop with Multiplication (Advanced)Challenge 7: Nested Loop with Multiplication (Pro)Solution Review: Nested Loop with Multiplication (Pro)Complexity Quiz: Test your understanding of Complexity

4.

Sorting & Searching

Selection Sort, Bubble Sort, & Insertion SortMerge SortQuicksortOverview of Sorting AlgorithmsSearching AlgorithmsChallenge 1: Find Two Numbers that Add up to "s"Solution Review: Find Two Numbers that Add up to "s"Challenge 2: Search in a Rotated ArraySolution Review: Search in a Rotated ArrayChallenge 3: Group AnagramsSolution Review: Group AnagramsChallenge 4: Find the Median of Two Sorted ArraysSolution Review: Find the Median of Two Sorted ArraysChallenge 5: Find Duplicates in ArraySolution Review: Find Duplicates in ArrayChallenge 6: Search in Sorted MatrixSolution Review: Search in Sorted MatrixChallenge 7: Count Element OccurrenceSolution Review: Count Element OccurrenceChallenge 8: Search Insert PositionSolution Review: Search Insert PositionChallenge 9: Sparse SearchSolution Review: Sparse SearchChallenge 10: Dutch National Flag ProblemSolution Review: Dutch National Flag ProblemQuiz on Sorting & Searching

5.

Graph Algorithms

Introduction to Graph Algorithms and ImplementationChallenge 1: Implement Breadth First Graph TraversalSolution Review: Breadth First Graph TraversalChallenge 2: Implement Depth First Graph TraversalSolution Review: Depth First Graph TraversalChallenge 3: Calculate the Number of Nodes in a Given Graph LevelSolution Review: Calculate the Number of Nodes in a Given Graph LevelChallenge 4: Print the Transpose of a GraphSolution Review: Print the Transpose of a GraphChallenge 5: Print all Paths Between Two NodesSolution Review: Print all Paths Between Two NodesChallenge 6: Check If Graph is Strongly ConnectedSolution Review: Check if a Graph is Strongly ConnectedChallenge 7: Print all Connected Components in a GraphSolution Review: Print all Connected Components of a GraphChallenge 8: Check if Removing Edge Creates Components in GraphSolution Review: Check if Removing Given Edge Creates Components in GraphChallenge 9: Check If Given Graph is BipartiteSolution Review: Check If Given Graph is BipartiteChallenge 10: Topological Sorting of a GraphSolution Review: Topological Sorting of a GraphQuiz on Graph Algorithms

6.

Greedy Algorithms

23 Lessons

7.

Dynamic Programming

25 Lessons

8.

Divide and Conquer

23 Lessons

9.

Appendix: Auxiliary Source Code

4 Lessons

10.

Conclusion

2 Lessons

Course Author

Learn everything you’ll need to perform like a rockstar on your coding interviews in C++.

Ace the C++ Coding Interview

Learn everything you’ll need to prepare for your coding interviews in C++.

7 Modules

Trusted by 1.4 million developers working at companies

Anthony Walker

@_webarchitect_

Evan Dunbar

ML Engineer

Carlos Matias La Borde

Software Developer

Souvik Kundu

Front-end Developer

Vinay Krishnaiah

Software Developer

Eric Downs

Musician/Entrepeneur

Kenan Eyvazov

DevOps Engineer

Souvik Kundu

Front-end Developer

Eric Downs

Musician/Entrepeneur

Anthony Walker

@_webarchitect_

Evan Dunbar

ML Engineer

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

Instant Code Feedback

AI-Powered Mock Interviews

Adaptive Learning

Explain with AI

AI Code Mentor

Frequently Asked Questions

How to prepare for a C++ coding interview

Is C++ good for coding interviews?

What are the most used C++ algorithms?

Are C++ coders in demand?

Does Google hire C++ developers?