This is the repository for the LinkedIn Learning course Advanced Algorithmic Thinking with Python
. The full course is available from LinkedIn Learning.
The need for competent problem solvers has never been greater, and Python has become an important programming language. Because of its clarity and expressiveness, Python is an ideal tool to explore algorithmic thinking. In this course, Robin Andrews explains algorithmic thinking and guides you through puzzles, problems, and theories to help you build and challenge your skills. After a warmup problem, Robin shows you how to use the divide and conquer problem solving technique and the Quicksort algorithm, with puzzles to practice each. He dives into the transform and conquer technique that applies preprocessing to the data for a problem before implementing a solution, with additional puzzles for practice. Robin goes over dynamic programming, both top-down and bottom-up, and gives you problems to practice both theory and implementation. Plus, he introduces and explains hash tables and how you can use them to solve problems in Python.
Most of this course can be completed in a browser using GitHub Codespaces. There is a video near the start of the course explaining how to to do this.
- To use these exercise files locally, you must have the following installed:
- Python 3
- Clone this repository into your local machine using the terminal (Mac), CMD (Windows), or a GUI tool like SourceTree.
The main branch contains the same state as the branch for the last video, and may be the only branch you want to work with. This repository has branches for each of the videos in the course. You can use the branch pop up menu in github to switch to a specific branch and take a look at the course at that stage, or you can add /tree/BRANCH_NAME
to the URL to go to the branch you want to access.
Robin Andrews
Check out my other courses on LinkedIn Learning.