# Mastering critical SKILLS in Algorithms using C++: Part 1

Almost all other courses focus on knowledge. In this course, we focus on gaining real skills.Overall:The course covers a good subset of algorthmic topicsLearn the inner details of the algorithms and their time & memory complexity analysisLearn how to code line-by-lineSource code and Slides and provided for all contentAn extensive amount of practice to master the taught algorithms (where most other content fails!)Content of this partOnline Judges and How to useRecursion: Basics ReviewComplexity Analysis (Part 1)Sorting: Insertion, Selection and CountBinary Search: Basic and generalised formsGraph RepresentationGraph DFSGraph BFSGraph Topological OrderExtensive practice on these subjectsPhilosophy of the course 2 parts:The first part focus on topics that are more common in interviewsThe first part focus on topics that require less proving skills. This allow you to sharpen problem-solving skills more firstIn the next part we proceed toward other important topics in the Algorithms field.Teaching Style:Instead of long theory then coding style, we follow a unique styleI parallelize the concepts with the codes as much as possibleGo Concrete as possibleUse Clear Simple VisualizationEngagement By the end of the journeySolid understanding of Algorithms topics in C++Mastering different skillsAnalytical and Problem-Solving skillsClean coding for algorithmsWith the administered problem-solving skillsYou can start competitive programming smoothlyA strong step toward interviews preparationPrerequisitesProgramming Skills:Strong Programming skillsSolving a lot of basic problem-solving problems on fundamentalsGood understanding for basic recursion (E.g. Fibonacci) STL, especially Vectors, map/set, unordered map/setHighly Preferred: Do programming projectsFinish a descent data structure course (extensive data structure practice)About the Instructor (relevant experience): I was ICPC Finalists in 2010 where algorithms and data structures are the key to success. Learning the exact inner details of these algorithms and how to build real experience compare to others is an important key. For more about me, visit my website.Don't miss such a unique learning experience!Acknowledgement: “I’d like to extend my gratitude towards Robert Bogan for his help with proofreading the slides for this course”