Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

LinkedIn Learning

Algorithmic Thinking with Python: Foundations

via LinkedIn Learning

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Learn how to develop your algorithmic thinking skills to become a better problem solver.

Syllabus

Introduction
  • Importance of algorithmic thinking
  • What you should know
  • Use GitHub Codespaces with this course
1. Warm Up
  • Challenge: 100 doors
  • Solution: 100 doors
  • FizzBuzz
2. Tools to Help Understand the Flow of Algorithms
  • Tracing algorithms using an online visualization tool
  • Tracing algorithms using code or a debugger
  • Algorithm animations
  • Pseudocode
  • Using a whiteboard to explore algorithms
3. Brute Force Algorithms
  • Introduction to brute force algorithms
  • Linear search
  • Selection Sort introduction
  • Challenge: Selection Sort in Python
  • Solution: Selection Sort in Python
4. Analysis of Time-Space Complexity
  • Introduction to analysis of time-space complexity
  • Challenge: Big-O notation practice
  • Solution: Big-O notation practice
  • Examples of time complexity with Python
  • Memory considerations when implementing algorithms
5. Greedy Algorithms
  • Introduction to greedy algorithms
  • Introduction to the change making problem
  • Solution to the change making problem
  • Dijkstra's algorithm
  • Challenge: Dijkstra's algorithm
  • Solution: Dijkstra's algorithm
  • Dijkstra's algorithm: Python implementation
6. Decrease and Conquer
  • Ferrying soldiers
  • Introduction to decrease and conquer
  • Binary search
  • Challenge: Binary search
  • Solution: Binary search
Conclusion
  • Exploring algorithmic thinking with Python

Taught by

Robin Andrews

Reviews

4.7 rating at LinkedIn Learning based on 374 ratings

Start your review of Algorithmic Thinking with Python: Foundations

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.