HOWTO: Cover the Course Prerequisites
Studying the material requires:
- Python programming skills
- Practical knowledge of how to implement data structures (Big-O notation, search trees)
- Knowledge of probability theory and combinatorics basics
You should already have a good practical understanding of these topics from courses on programming, data structures and algorithms, discrete math, and statistics. If you do not feel well prepared in one of these areas, here are some pointers to help you prepare.
Note: Please contact me if you find a link that does not work.
Python Skills
- W3Schools’ Python Tutorial: go through sections as needed
- W3Schools’ NumPy Tutorial: go through “Basic”
- W3Schools’ Pandas Tutorial: go through “Basic”
- Dataquest’s Intro to Jupyter Notebook
Data Structures and Algorithms
- Data Structures and Algorithms in Python - Full Course for Beginners: Focus on the topics you need to review. Be sure to watch at least the Binary Search Trees Python Tutorial.
Probability Theory
- Khan Academy’s Statistics and probability: You need at least Unit 7 Probability.
- Steve Brunton’s Probability Bootcamp offers a very detailed introduction.
Combinatorics
- Khan Academy’s Unit 8 Counting, permutations, and combinations