[an error occurred while processing this directive]
TCSS 343A, Winter 2005
Mathematical Principles of Computing II

Course Schedule

Material covered by schedule subject to change, although midterm & final dates are fixed.

Schedule is numbered by week.
  1. (1/3): Introduction, math and basic analysis tools, including recurrence equations.
    Read 1.1-1.4, 1.6, Appendix A, 2, 3.1. 
    (1/5): Review data structures: sequences, trees, Priority queues. 
  2. (1/10): Assignment #1 due. Review sorting algorithms, (heap sort, merge sort). Intro to divide and conquer.  
    Read 4.1, 5.2 
    (1/12): More recursive analysis and recurrence equations.
  3. (1/17): Holiday, no class.
    Read 4.3-4.5.
    (1/19):  Assignment #2 due. More divide and conquer algorithms. Possibly bucket & radix sort.
  4. (1/24): Midterm 1 on Monday, Jan. 24th.
    Read 4.2, 4.7.
    (1/26): Master Theorem, Big integer multiplication.  
  5. (1/31):  Assignment #3 due. Dynamic programming.
    Read chapter 5.3
    (2/2):  More dynamic programming.
  6. (2/7):  Assignment #4 due. Greedy algorithms.
    Read chapter 5.1, 6.1-6.2, 7.1
    (2/9):  Intro to Graphs and Graph ADT. Start Dijkstra's algorithm.   
  7. (2/14):  Midterm 2 on Monday, Feb. 14th.
    Read chapter 6, 7.1 
    (2/16):  Finish Dijkstra's shortest path algorithm, DFS and DFS-based algorithms; BFS.  
  8. (2/21): Holiday, no class.
    Read chapter 7
    (2/23): Assignment #5 due. Finish DFS & BFS. 
  9. (2/28): Minimum spanning tree; Floyd-Warshall's.
    Read chapter 7.
    (3/2): Finish Floyd-Warshall's. Assignment #6 due.
  10. (3/7): Least Common Subsequence.
    Read chapter 9.4. Skim 13.1-13.3.
    (3/9): Intro to NP. Review. Assignment #7 due.  
  11. Final Exam date: Wednesday, Mar. 16th