Schedule

Note: This schedule is subject to change (as needed).

Week Lecture Topic Due
Week 1 Tue, 09/08
Thu, 09/10
Lecture 1 Introduction
  • Intro to the course
  • Intro to modern computers
  • Data representation and conversion
Sign up for a Tutorial Session
Week 2 Tue, 09/15
Thu, 09/17
Lecture 2 Python Basics
  • Basic intro to Python language
  • Data types, variables, expressions, statements
  • Input/output
Week 3 Tue, 09/22
Thu, 09/24
Lecture 3 Flow Control
  • Conditional flow
  • Loops
Week 4 Tue, 09/29 Lecture 4 Function
  • Defining functions
  • Function parameters and return values
  • System functions
Chinese National Holiday
Week 5 Tue, 10/08 Lecture 4 Continued
Week 6 Tue, 10/13
Thu, 10/15
Lecture 5 Data Structures
  • Lists
  • Dictionaries
  • Tuples
Week 7 Tue, 10/20
Thu, 10/22
Review for mid-term quiz
Fri, 10/23 Midterm exam!
Week 8 Tue, 10/27
Thu, 10/29
Lecture 6 Additional Note Introduction to object-oriented programming (I)
  • Object
  • Class
  • Abstraction and encapsulation
Week 9 Tue, 11/03
Thu, 11/05
Lecture 7 Introduction to object-oriented programming (II)
  • Inheritance
  • Polymorphism
Week 10 Tue, 11/10
Thu, 11/12
Lecture 8 Data Structure and Algorithms -- Intro
  • Complexity analysis
  • Recursion (I)
Week 11 Tue, 11/17
Thu, 11/19
Lecture 9 Recursion, Stack, and Queue
  • Recursion (II)
  • Stack
  • Queue
Week 12 Tue, 11/24
Thu, 11/26
Lecture 10 Linked List
  • Linked list
  • Sorting
Week 13 Tue, 12/01
Thu, 12/03
Lecture 11 Tree
  • Tree
  • Tree Search
Week 14 Tue, 12/08
Thu, 12/10
Final Exam Review
Week 15 Tue, 12/15
Thu, 12/17
Final Exam Review