## Lecture Slides and Notes

Listed below are lecture notes/slides saved as PDF files - there are 3 slides per page, with room for you to take notes. While the full set of lecture notes is still a work in progress, I will work to have lecture notes posted here at least two days before each class meeting, so that students who want to print these out to take notes on during class can do so.

- Lecture 1: Class Introduction
- Lecture 2: Success in College
- Lecture 3: Introduction to Computer Science
- Lecture 4: Computing and Programming
- Lecture 5: Abstraction
- Lecture 6: Data Representation 1 - Numbers, Bases, and Binary
- Lecture 7: Data Representation 2 - Hexadecimal and Practical Issues
- Lecture 8: Algorithms 1 - The Basics
- Lecture 9: Algorithms 2 - Measuring Time
- Lecture 10: Algorithms 3 - Time Complexity Basics (Constant, Linear, and Quadratic Time)
- Lecture 11: Algorithms 4 - More Time Complexity (Logarithmis and Exponential Time)
- Lecture 12: Reductions, Self-Similarity, and Recursion
- Lecture 13: Data Representation 3 - Media - Text and Pictures
- Lecture 14: Data Representation 4 - Media - Sound, Video, and Compression
- Lecture 15: Data and Big Data
- Lecture 16: The Internet, Part 1 (Local Area Networks)
- Lecture 17: The Internet, Part 2 (Networks of Networks)
- Lecture 18: Security and Privacy
- Lecture 19: Artificial Intelligence
- Lecture 20: Limits and Future of Computing