This course will give you the ability to solve problems, most people focus on the programming language, but people often forget about algorithms.

Algorithms are definitely more important than a programming language, you can learn a programming language in about week, but the problem-solving ability is much harder to learn. But the benefits are worth it.

When you get to interview mostly they care about your problem-solving abilities.

To get your dream job, you need to know how to solve whatever problem they have. In this course, you will learn how to do that.

Also, I believe that nobody has time for long and boring lectures, so in this class, I try to explain the important things in a fast and engaging way, so I won't bore you to death.

We start off with Sorting algorithms, I explain each algorithm and then I show you implementation.

After that we take a look at Data Structures, I choose In my opinion the best Structures for you to learn the important concepts.

As a bonus, I go through the complex problem-solving techniques. And I show you how these works on common examples such as Knapsack and Minimum spanning tree.

I believe that learning and understanding these concepts will help you solve problems more efficiently.