Not all programs are created equal. In this course, we'll focus on writing quality code that runs correctly and efficiently. We'll design, code and validate our programs and learn how to compare programs that are addressing the same task.
- Palindrome: Approaching the Problem
- Palindrome Algorithm 1
- Palindrome Algorithm 2
- Palindrome Algorithm 3
- The Restaurant Recommendations Problem
- Restaurant Recommendations: Representing the Data
- Restaurant Recommendations: Planning the Program
- Testing Automatically Using doctest
- Writing a 'main' program
- Creating Your Own Types
- Testing Automatically Using unittest
- Choosing Test Cases
- Testing Functions that Mutate Values
- Analyzing Algorithms
- Linear Search
- Binary Search
- Comparing Search Algorithms
- Bubble Sort
- Selection Sort
- Insertion Sort