STEM

Programming Foundations: Algorithms

Algorithms are the universal building blocks of programming. They power the software you use every day, whether it’s a spreadsheet, a social network, or a driving assistant. Algorithms offer a way to think about programming challenges in plain English, before they are translated into a specific language like C# or JavaScript. In this course, author and developer Joe Marini explains some of the most popular and useful algorithms for searching and sorting information, working with techniques like recursion, and understanding common data structures. He also discusses the performance implications of different algorithms and how to evaluate the performance of a given algorithm. Each algorithm is shown in practice in Python, but the lessons can be applied to any programming language. The course is also set up with GitHub Codespaces, so you can follow along with the examples without installing anything on your computer.

Learn More