15-190-mini: Schedule
Spring 2010


 
Week #

Dates

Event / Topics

Labs, Homeworks, and Quizzes

Week #1

Wed 17-Mar Digital Representation (Two’s Complement)
Computer Architecture (Logic + Circuits + Assembly)
No quiz this week
Lab1
Optional Hw1

Week #2

Wed 24-Mar Two-Dimensional Arrays
    Matrices and Finding Polynomial Solutions to Power Sums
Quiz1
Lab2
Optional Hw2

Week #3

Wed 31-Mar Recursion
   Towers of Hanoi
   Fib (and memoization)
   Quicksort
   Depth-First Search with Backtracking
      Knight's Tour, NQueens
Quiz2
Lab3
Optional Hw3

Week #4

Wed 7-Apr Recursion Redux:
    NQueens, Flood Fill, Maze Solving
Counting and Computability
   Countability of Integers, Evens, Primes, Rationals, Lattice Points
   Diagonalization
   Uncountability of Reals, Power Sets (Aleph Numbers)
   Godel's Incompleteness Theorem
   The Halting Problem
   Rice's Theorem
Exponential Time Complexity
   SubsetSum
Quiz3
Lab4
Optional Hw4

Week #5

Wed 14-Apr Inheritance basics (Interfaces, Classes,...)
Collections:
   Sets, Stacks, Queues, ArrayLists, LinkedLists
Prefix Notation, Postfix Notation
Depth-First Search (review)
Breadth-First Search (8-Puzzle) with an explicit queue 
Quiz4
Lab5
Optional Hw5
    Spring Carnival (Thu 15-Apr to Sat 17-Apr)  

Week #6

Wed 21-Apr Abstract Data Types + Interfaces
ArrayLists, LinkedLists
Sets + HashSets
Time Complexity of HashSet Operations (add, contains)
HashSet implementation
   Array of LinkedLists
   Set elements must define equals() and hashCode()
Maps + HashMaps
Optimizing Breadth-First Search with a "seen" Set
Combinatorial Iterators
   Permutations.java, Combinations.java,
   PowerSets.java, BaseNCounting.java
Problem-Solving with Combinatorial Iterators
   SubsetSum, 24 game, Cryptarithm
Bonus/Optional Topic:  NP-Completeness
No quiz this week
Lab6
Optional Hw6

Week #7

Wed 28-Apr AI: 2-Player Games with Minimax
Client-Server Programming with Sockets
Threads (a gentle introduction)
Command-Line Arguments
Quiz5
No lab or hw this week