Introduction to Algorithms

Gain a solid understanding of the fundamentals of algorithms and problem-solving

Picture of Nsikak Imoh, author of Macsika Blog
White background with the text Introduction to algorithms
White background with the text Introduction to algorithms

Table of Content

Algorithm is an important subject not only in school but for competitive exams, job interviews in tech companies, white board tests, and even programming contests.

Most questions in these aforementioned activities revolves around solving problems with algorithms.

The issues with most people who encounter these type of questions is failure to properly understand the task at hand and inability to think of an approach or strategy for solving them.

If you are a beginner in programming, a software developer from a non-computer science background, or a front-end developer looking to clear those algorithm and data structure interview rounds, this course is for you.

The goal is to help you understand algorithms and problem-solving in programming in the simplest form.

We guarantee that by the end of this course if you study and practice everything we talk about, you will have a solid understanding of the fundamentals of algorithms and problem-solving, and be able to tackle medium to hard algorithm problems on LeetCode.

You will be able to detect different format of algorithmic questions and answer them properly.

To keep this introduction pretty simple, we have made a list of four points you should keep in mind while taking this course.

  • In this course, we will begin with an introduction to the fundamentals of algorithms and gradually move to more advanced and complicated algorithms.
  • This course will focus on the hands-on practical aspect of algorithms. That said, we will barely touch on the theoretical aspects of algorithms that will help you understand the topic and dive straight into problem-solving.
  • Our primary programming language for tutoring will be Python since the aim is to keep things simple, however, we might use other languages for illustrative purposes and whenever required throughout the course.
  • Finally, this course is the first part of a larger two-part course on Data structures and Algorithms. The second part, which is about data structures, is also available, and we strongly advise you to take both courses to gain complete knowledge of DSA since algorithms and data structures go hand in hand.

Course Prerequisite

This course requires an intermediate knowledge of python programming language. If you're new to Python, take a crash course on the fundamentals of Python to be able to follow along with this course.

Wrap Off and Advice

What you are about to learn in this course on algorithms might look a bit challenging at first.

Do not be stressed out or discouraged if you do not understand a particular algorithm.

We advise you:

  • Have a pen and paper and trace the execution of code with a sample input rather than stare at your monitor, figuring out what each line is doing.
  • Do not rush through the videos. The code will always be available at the repo for you to refer to when necessary.
Next Tutorial — What is an Algorithm, Is it Important?Get the Complete Code of Algorithms: Baby-Steps to Complete Mastery on Github.

Connect with me.

Need an engineer on your team to grease an idea, build a great product, grow a business or just sip tea and share a laugh?