Main.Schedule History

Hide minor edits - Show changes to output

Changed line 7 from:
''Lecture:'' Review of dynamic programming\\
to:
''Lecture:'' Review of dynamic programming
Added lines 1-11:
!!Week 16:

'''Monday, 12/3'''\\
''Lecture:'' Go over the NP-completeness assignment and solved a few additional problems

'''Wednesday, 12/5'''\\
''Lecture:'' Review of dynamic programming\\

'''Friday, 12/7'''\\
''Lecture:'' Go over the local search assignment, and do a general review for the exam''
Added lines 10-14:

'''Friday, 11/30'''\\
''Lecture:'' Local search, continued.\\
''Reading:'' Chapter 12 in Kleinberg and Tardos.\\
Written homework #8 is available.
Added lines 6-10:

'''Wednesday, 11/28'''\\
''Lecture:'' Local search, continued.\\
''Reading:'' Chapter 12 in Kleinberg and Tardos.
Added lines 1-6:
!!Week 15:

'''Monday, 11/26'''\\
''Lecture:'' Coping with NP-completeness: local search [ [[Path:../../pdfs/12_localsearch.pdf | slides]] ].\\
''Reading:'' Chapter 12 in Kleinberg and Tardos.
Added lines 1-4:
!!Week 14:

Thanksgiving. Have a good break!
Added lines 6-13:

'''Wednesday, 11/13'''\\
''Lecture:'' More NP-complete problems [ [[Path:../../pdfs/08_np-complete-problems.pdf | slides]] ].\\
''Reading:'' Chapter 8.5 in Kleinberg and Tardos.


'''Friday, 11/15'''\\
''Lecture:'' quiz and review of NP and NP-completeness
Added lines 1-7:
!!Week 13:

'''Monday, 11/12'''\\
''Lecture:'' P, NP, and NP-completeness - continued.\\
''Reading:'' Chapter 8.3,8.4 in Kleinberg and Tardos.
Added lines 11-13:
'''Friday, 11/8'''\\
''Lecture:'' P, NP, and NP-completeness [ [[Path:../../pdfs/08_np-completeness.pdf | slides]] ].\\
''Reading:'' Chapter 8.3,8.4 in Kleinberg and Tardos.
Changed line 8 from:
''Lecture:'' Reductions as a tool for showing problem hardness [ [[Path:../../pdfs/07_maxflow.pdf | slides]] ].\\
to:
''Lecture:'' Reductions as a tool for showing problem hardness [ [[Path:../../pdfs/08_reductions.pdf | slides]] ].\\
Added lines 1-11:
!!Week 12:

'''Monday, 11/4'''\\
''Lecture:'' Continue the applications of maximum network flow.\\
''Reading:'' Chapter 7.5,7.7 in Kleinberg and Tardos.

'''Wednesday, 11/6'''\\
''Lecture:'' Reductions as a tool for showing problem hardness [ [[Path:../../pdfs/07_maxflow.pdf | slides]] ].\\
''Reading:'' Chapter 8.1,8.2 in Kleinberg and Tardos.
Changed line 24 from:
''Reading:'' Chapter 7.5-7.7 in Kleinberg and Tardos.
to:
''Reading:'' Chapter 7.5-7.7 in Kleinberg and Tardos.\\
Changed line 14 from:
''Assignments:'' The next written assignment is [[Path:../../pdfs/hw6.pdf| available].
to:
''Assignments:'' The next written assignment is [[Path:../../pdfs/hw6.pdf| available]].
Changed line 14 from:
to:
''Assignments:'' The next written assignment is [[Path:../../pdfs/hw6.pdf| available].
Added lines 10-13:

'''Friday, 11/2'''\\
''Lecture:'' Applications of maximum network flow [ [[Path:../../pdfs/07_maxflow_applications.pdf | slides]] ].\\
''Reading:'' Chapter 7.5-7.7 in Kleinberg and Tardos.
Added lines 5-8:
''Reading:'' Chapter 7.1,7.2 in Kleinberg and Tardos.

'''Wednesday, 10/31'''\\
''Lecture:'' Maximum network flow - continued.\\
Added lines 1-7:
!!Week 11:

'''Monday, 10/29'''\\
''Lecture:'' Maximum network flow [ [[Path:../../pdfs/07_maxflow.pdf | slides]] ].\\
''Reading:'' Chapter 7.1,7.2 in Kleinberg and Tardos.
Added lines 10-13:

'''Friday, 10/26'''\\
''Lecture:'' Dynamic programming - the Bellman-Ford algorithm for shortest paths [ [[Path:../../pdfs/06_bellman_ford.pdf | slides]] ].\\
''Reading:'' Chapter 6.8 in Kleinberg and Tardos.
Added lines 5-8:
''Reading:'' Chapter 6.6 in Kleinberg and Tardos.

'''Wednesday, 10/24'''\\
''Lecture:'' Dynamic programming - linear-space sequence alignment using a hybrid dynamic programming/divide and conquer approach .\\
Added lines 1-6:
!!Week 10:

'''Monday, 10/22'''\\
''Lecture:'' Dynamic programming - we'll continue the discussion of sequence alignment.\\
''Reading:'' Chapter 6.7 in Kleinberg and Tardos.
Added lines 10-13:

'''Friday, 10/19'''\\
''Lecture:'' Dynamic programming - sequence alignment [ [[Path:../../pdfs/06_sequence_alignment.pdf | slides]] ].\\
''Reading:'' Chapter 6.6 in Kleinberg and Tardos.
Added lines 6-9:

'''Wednesday, 10/17'''\\
''Lecture:'' Dynamic programming - the knapsack problem (monday slides continued).\\
''Reading:'' Chapter 6.4 in Kleinberg and Tardos.
Changed line 4 from:
''Lecture:'' Dynamic programming - weighted interval scheduling [ [[Path:../../pdfs/06_dyanamic_programming.pdf | slides]] ].\\
to:
''Lecture:'' Dynamic programming - weighted interval scheduling [ [[Path:../../pdfs/06_dynamic_programming.pdf | slides]] ].\\
Changed line 1 from:
!!Week 8:
to:
!!Week 9:
Added lines 3-9:
'''Monday, 10/15'''\\
''Lecture:'' Dynamic programming - weighted interval scheduling [ [[Path:../../pdfs/06_dyanamic_programming.pdf | slides]] ].\\
''Reading:'' Chapter 6.1 in Kleinberg and Tardos.


!!Week 8:
Added lines 18-21:

'''Friday, 10/12'''\\
''Lecture:'' Divide and conquer algorithms - integer multiplication [ [[Path:../../pdfs/05_multiplication.pdf | slides]] ].\\
''Reading:'' Chapter 5.5 in Kleinberg and Tardos.
Changed line 9 from:
''Reading:'' Chapter 5.4 in Kleinberg and Tardos.
to:
''Reading:'' Chapter 5.4 in Kleinberg and Tardos.\\
Changed line 10 from:
to:
''Assignments:'' Written assignment [[Path:../../pdfs/hw4.pdf | #4]] has been posted.
Added lines 6-9:

'''Wednesday, 10/10'''\\
''Lecture:'' Divide and conquer algorithms - closest pair problem [ [[Path:../../pdfs/05_closest_pair.pdf | slides]] ].\\
''Reading:'' Chapter 5.4 in Kleinberg and Tardos.
Added lines 1-7:
!!Week 8:

'''Monday, 10/8'''\\
''Lecture:'' Divide and conquer algorithms [ [[Path:../../pdfs/05_divide-and-conquer.pdf | slides]] ].\\
''Reading:'' Chapter 5.1,5.2 in Kleinberg and Tardos.
Changed lines 4-6 from:
''Lecture:'' Greedy algorithms - continue minimum spanning trees and Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf | slides]] ].\\
''Reading:'' Chapter 4.7,4.8 in Kleinberg and Tardos.
to:
''Lecture:'' Greedy algorithms - continue minimum spanning trees.\\
''Reading:'' Chapter 4.5 - 4.7 in Kleinberg and Tardos
.
Changed line 9 from:
''Lecture:'' Huffman encoding - cont. \\
to:
''Lecture:'' Greedy algorithms - Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf | slides]] ].\\
Added lines 1-13:
!!Week 7:

'''Monday, 10/1'''\\
''Lecture:'' Greedy algorithms - continue minimum spanning trees and Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf | slides]] ].\\
''Reading:'' Chapter 4.7,4.8 in Kleinberg and Tardos.

'''Wednesday, 10/3'''\\
''Lecture:'' Huffman encoding - cont. \\
''Reading:'' Chapter 4.8 in Kleinberg and Tardos.

'''Friday, 10/5'''\\
''Lecture:'' midterm.
Changed line 12 from:
''Lecture:'' Greedy algorithms - minimum spanning trees [ [[Path:../../pdfs/04_mst.pdf | slides]] ].\\ Here's the [ [[Path:../../pdfs/04_dijkstra_demo.pdf | demo]] ] of Dijkstra's algorithm.\\
to:
''Lecture:'' Greedy algorithms - minimum spanning trees [ [[Path:../../pdfs/04_mst.pdf | slides]] ].\\ Here's the [[Path:../../pdfs/04_dijkstra_demo.pdf | demo]] of Dijkstra's algorithm.\\
Changed line 12 from:
''Lecture:'' Greedy algorithms - minimum spanning trees [ [[Path:../../pdfs/04_mst.pdf | slides]] ]. Here's the [ [[Path:../../pdfs/04_dijkstra_demo.pdf | demo]] ] of Dijkstra's algorithm.\\
to:
''Lecture:'' Greedy algorithms - minimum spanning trees [ [[Path:../../pdfs/04_mst.pdf | slides]] ].\\ Here's the [ [[Path:../../pdfs/04_dijkstra_demo.pdf | demo]] ] of Dijkstra's algorithm.\\
Added lines 10-13:

'''Friday, 9/28'''\\
''Lecture:'' Greedy algorithms - minimum spanning trees [ [[Path:../../pdfs/04_mst.pdf | slides]] ]. Here's the [ [[Path:../../pdfs/04_dijkstra_demo.pdf | demo]] ] of Dijkstra's algorithm.\\
''Reading:'' Chapter 4.5, 4.7 in Kleinberg and Tardos.
Changed line 4 from:
''Lecture:'' Greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf | slides]] ].\\
to:
''Lecture:'' Greedy algorithms - interval scheduling [ [[Path:../../pdfs/04_greedy.pdf | slides]] ].\\
Changed line 8 from:
''Lecture:'' Greedy algorithms [ [[Path:../../pdfs/04_dijkstra.pdf | slides]] ].\\
to:
''Lecture:'' Greedy algorithms - Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf | slides]] ].\\
Changed lines 5-9 from:
''Reading:'' Chapter 3 in Kleinberg and Tardos.
to:
''Reading:'' Chapter 4.1 in Kleinberg and Tardos.

'''Wednesday, 9/26'''\\
''Lecture:'' Greedy algorithms [ [[Path:../../pdfs/04_dijkstra.pdf | slides]] ].\\
''Reading:'' Chapter 4.4
in Kleinberg and Tardos.
Changed line 4 from:
''Lecture:'' Greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf]] ].\\
to:
''Lecture:'' Greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf | slides]] ].\\
Added lines 1-7:
!!Week 6:

'''Monday, 9/24'''\\
''Lecture:'' Greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf]] ].\\
''Reading:'' Chapter 3 in Kleinberg and Tardos.
Changed line 9 from:
''Lecture:'' Graphs - bipartite graphs, strongly connected components\\.
to:
''Lecture:'' Graphs - bipartite graphs, strongly connected components.\\
Added lines 11-15:

'''Friday, 9/21'''\\
''Lecture:'' Graphs - DAGs.\\
''Reading:'' Chapter 3 in Kleinberg and Tardos.
Changed line 4 from:
''Lecture:'' Graphs - DFS, bipartite graphs.\\
to:
''Lecture:'' Graphs - DFS.\\
Added lines 7-10:

'''Wednesday, 9/19'''\\
''Lecture:'' Graphs - bipartite graphs, strongly connected components\\.
''Reading:'' Chapter 3 in Kleinberg and Tardos.
Changed line 44 from:
'''Friday, 9/31'''\\
to:
'''Friday, 8/31'''\\
Added line 6:
''Assignments:'' written assignment 3 is posted.
Added lines 1-6:
!!Week 5:

'''Monday, 9/17'''\\
''Lecture:'' Graphs - DFS, bipartite graphs.\\
''Reading:'' Chapter 3 in Kleinberg and Tardos.\\
Changed line 15 from:
''Lecture:'' Graphs and graph traversal [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. \\
to:
''Lecture:'' Graphs [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. \\
Changed line 19 from:
''Lecture:'' Graphs - traversal and bipartite graphs (continuing graph slide set). \\
to:
''Lecture:'' Graphs - graph traversal using BFS (continuing graph slide set). \\
Added lines 7-15:

'''Wednesday, 9/12'''\\
''Lecture:'' Graphs and graph traversal [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. \\
''Reading:'' Chapter 3 in Kleinberg and Tardos.

'''Friday, 9/14'''\\
''Lecture:'' Graphs - traversal and bipartite graphs (continuing graph slide set). \\
''Reading:'' Chapter 3 in Kleinberg and Tardos.
Changed lines 5-6 from:
''Reading:'' Chapter 2 in Kleinberg and Tardos.
to:
''Reading:'' Chapter 2 in Kleinberg and Tardos.\\
''Assignments:'' written assignment 2 is posted
.
Changed line 46 from:
''Assignments:'' Written assignment 1 is [[Path:../../pdfs/hw1.pdf | available]].
to:
''Assignments:'' Written assignment 1 is [[Path:../../pdfs/hw1.pdf | available]].
Changed line 1 from:
!!Week 2:
to:
!!Week 4:
Deleted line 0:
Changed line 4 from:
''Lecture:'' Finish Big-O analysis.
to:
''Lecture:'' Finish Big-O analysis.\\
Added lines 1-7:

!!Week 2:

'''Monday, 9/10'''\\
''Lecture:'' Finish Big-O analysis.
''Reading:'' Chapter 2 in Kleinberg and Tardos.
Added lines 14-17:

'''Friday, 9/7'''\\
''Lecture:'' More Big-O.
''Reading:'' Chapter 2 in Kleinberg and Tardos.
Changed line 5 from:
''Reading:'' Chapter 2 in Kleinberg and Tardos.
to:
''Reading:'' Chapter 2 in Kleinberg and Tardos.\\
Added lines 1-7:
!!Week 3:

'''Wednesday, 9/5'''\\
''Lecture:'' On friday we just started on Big O analysis. We will continue this topic.
''Reading:'' Chapter 2 in Kleinberg and Tardos.
''Assignments:'' written assignment 1 is due in class on Wednesday, and programming assignment 1 is due thursday at 5pm.
Changed line 11 from:
''Lecture:'' Big O analysis [[Path:../../pdfs/02_bigO.pdf | slides]] ]. quiz on big O.\\
to:
''Lecture:'' Big O analysis [ [[Path:../../pdfs/02_bigO.pdf | slides]] ]. quiz on big O.\\
Changed line 11 from:
''Lecture:'' Big O analysis. There will be a quiz.\\
to:
''Lecture:'' Big O analysis [[Path:../../pdfs/02_bigO.pdf | slides]] ]. quiz on big O.\\
Deleted line 28:
Changed line 23 from:
''Lecture:'' Crash course in Python. Here's the [[set]] code I showed.\\
to:
''Lecture:'' Crash course in Python. Here's the [[set]] code I showed.
Deleted line 23:
''Python intro sessions:'' The material covered in this week's intro sessions is [[python_intro | here]].
Changed line 8 from:
''Lecture:'' We will be in a labs (215 and 225) to help you with your assignments.\\
to:
''Lecture:'' We will be in a labs (215 and 225) to help you with your assignments.
Changed lines 8-9 from:
''Lecture:'' Big-O analysis.
''Reading:''
Chapter 2 in Kleinberg and Tardos.
to:
''Lecture:'' We will be in a labs (215 and 225) to help you with your assignments.\\

'''Friday, 9/31'''\\
''Lecture:'' Big O analysis. There will be a quiz.\\
''Reading:''
Chapter 2 in Kleinberg and Tardos.
Changed line 7 from:
''Wednesday, 8/29'''\\
to:
'''Wednesday, 8/29'''\\
Added lines 1-10:
!!Week 2:

'''Monday, 8/27'''\\
''Lecture:'' Finish discussion of the stable matching problem. Representative problems.
''Reading:'' Chapter 1 in Kleinberg and Tardos.

''Wednesday, 8/29'''\\
''Lecture:'' Big-O analysis.
''Reading:'' Chapter 2 in Kleinberg and Tardos.
Changed lines 26-27 from:
''Assignments:'' Written assignment 1 is [[Path:../../pdfs/hw1.pdf | available]].
to:
''Assignments:'' Written assignment 1 is [[Path:../../pdfs/hw1.pdf | available]].
Changed line 16 from:
''Assignments:'' Written assignment 1 is [[Assignments | available]].
to:
''Assignments:'' Written assignment 1 is [[Path:../../pdfs/hw1.pdf | available]].
Changed lines 15-16 from:
''Reading:'' Chapter 1 in Kleinberg and Tardos. \\
to:
''Reading:'' Chapter 1 in Kleinberg and Tardos. \\
''Assignments:'' Written assignment 1 is [[Assignments | available]].
Changed lines 11-15 from:
''Python intro sessions:'' The material covered in this week's intro sessions is [[python_intro | here]].
to:
''Python intro sessions:'' The material covered in this week's intro sessions is [[python_intro | here]].

'''Friday, 8/24'''\\
''Lecture:'' The Gale Shapely algorithm for the stable matching problem (continuing monday's slide set).\\
''Reading:'' Chapter 1 in Kleinberg and Tardos. \\
Changed lines 10-11 from:
''Lecture:'' Crash course in Python, and continuation of the stable matching slide set.\\
''Reading:'' Chapter 1 in Kleinberg and Tardos.
\\
to:
''Lecture:'' Crash course in Python. Here's the [[set]] code I showed.\\
Added line 12:
''Python intro sessions:'' The material covered in this week's intro sessions is [[python_intro | here]].
Changed line 6 from:
''Links:'': Here's a nice [[http://mathsite.math.berkeley.edu/smp/smp.html | demo and explanation]] of the stable matching problem. The NRMP explains their [[http://www.nrmp.org/res_match/about_res/algorithms.html | matching algorithm]], which is a variant of the Gale Shapley algorithm.
to:
''Links:'' Here's a nice [[http://mathsite.math.berkeley.edu/smp/smp.html | demo and explanation]] of the stable matching problem. The NRMP explains their [[http://www.nrmp.org/res_match/about_res/algorithms.html | matching algorithm]], which is a variant of the Gale Shapley algorithm.
Changed lines 6-8 from:
to:
''Links:'': Here's a nice [[http://mathsite.math.berkeley.edu/smp/smp.html | demo and explanation]] of the stable matching problem. The NRMP explains their [[http://www.nrmp.org/res_match/about_res/algorithms.html | matching algorithm]], which is a variant of the Gale Shapley algorithm.
Deleted line 11:
Added lines 6-10:

'''Wed, 8/22'''\\
''Lecture:'' Crash course in Python, and continuation of the stable matching slide set.\\
''Reading:'' Chapter 1 in Kleinberg and Tardos. \\
Changed line 4 from:
''Lecture:'' Course introduction and the stable matching problem [ [[Path:../../pdfs/01_intro.pdf | slides]] ].
to:
''Lecture:'' Course introduction and the stable matching problem [ [[Path:../../pdfs/01_intro.pdf | slides]] ].\\
Changed lines 4-5 from:
''Lecture:'' Course introduction\\
The stable matching
problem.\\
to:
''Lecture:'' Course introduction and the stable matching problem [ [[Path:../../pdfs/01_intro.pdf | slides]] ].
Deleted line 0:
Changed line 3 from:
'''Tuesday, 1/17'''\\
to:
'''Monday, 8/20'''\\
Deleted line 4:
A crash course in Python. Here's an example Python class: [[myset | set ]].\\
Changed lines 1-153 from:
!!Week 16:

'''Tuesday, 5/1'''\\
''Lecture:'' Coping with NP-completeness [ [[Path:../../pdfs/10-13_dealing_with_np_completeness.pdf | slides]] ].\\
''Reading:'' Chapters 10-13 in Kleinberg and Tardos

'''Thursday, 5/3'''\\
''Lecture:'' Review for final - please prepare questions!\\

!!Week 15:

'''Tuesday, 4/24'''\\
''Lecture:'' NP-completeness [ [[Path:../../pdfs/08_np-completeness.pdf| slides]] ].\\
''Reading:'' Chapter 8.3,8.4 in Kleinberg and Tardos

'''Thursday, 4/26'''\\
''Lecture:'' More NP-complete problems [ [[Path:../../pdfs/08_np-complete-problems.pdf| slides]] ].\\
''Reading:'' Chapter 8.5 in Kleinberg and Tardos

!!Week 14:

'''Tuesday, 4/17'''\\
''Lecture:'' Applications of the Maxflow problem (continue with Thursday's slide set)\\
''Reading:'' Chapter 7.6,7.7,7.10 in Kleinberg and Tardos

'''Thursday, 4/19'''\\
''Lecture:'' Reductions as a tool for showing problem hardness [ [[Path:../../pdfs/08_reductions.pdf| slides]] ].\\
''Reading:'' Chapter 8.1,8.2 in Kleinberg and Tardos



!!Week 13:

'''Tuesday, 4/10'''\\
''Lecture:'' The Maxflow problem and the Ford-Fulckerson algorithm (slides continued from Thursday).\\
''Reading:'' Chapter 7.1,7.2 in Kleinberg and Tardos

'''Thursday, 4/12'''\\
''Lecture:'' Applications of the Maxflow problem [ [[Path:../../pdfs/07_maxflow-applications.pdf| slides]] ]. And here's the maxflow [[Path:../../pdfs/07demo-maxflow.pdf| demo]] I showed.\\
''Reading:'' Chapter 7.5 in Kleinberg and Tardos


!!Week 12:

'''Tuesday, 4/3'''\\
''Lecture:'' Shortest paths using dynamic programming - [ [[Path:../../pdfs/06_bellman-ford.pdf| slides]] ].\\
''Reading:'' Chapter 6.8 in Kleinberg and Tardos

'''Thursday, 4/5'''\\
''Lecture:'' We'll continue the Bellman-Ford algorithm and start on the Maxflow problem [ [[Path:../../pdfs/07_maxflow.pdf| slides]] ].\\
''Reading:'' Chapter 7.1,7.2 in Kleinberg and Tardos


!!Week 11:

'''Tuesday, 3/27'''\\
''Lecture:'' Dynamic programming - subset sums and knapsack problems [ [[Path:../../pdfs/06_dynamic_programming.pdf| slides]] ].\\
''Reading:'' Chapter 6.4 in Kleinberg and Tardos

'''Thursday, 3/29'''\\
''Lecture:'' Dynamic programming - sequence alignment [ [[Path:../../pdfs/06_sequence_alignment.pdf| slides]] ].\\
''Reading:'' Chapter 6.6, 6.7 in Kleinberg and Tardos


!!Week 10:

'''Tuesday, 3/20'''\\
''Lecture:'' Divide and conquer - finding closest pair of points [ [[Path:../../pdfs/05_closest_pair.pdf| slides]] ], integer multiplication [ [[Path:../../pdfs/05_multiplication.pdf| slides]] ].\\
''Reading:'' Chapter 5.4,5.5 in Kleinberg and Tardos. \\

'''Thursday, 3/22'''\\
''Lecture:'' Dynamic programming - weighted interval scheduling [ [[Path:../../pdfs/06_dynamic_programming.pdf| slides]] ].\\
''Reading:'' Chapter 6.1,6.2 in Kleinberg and Tardos

!!Week 9:

Spring break

!!Week 8:

'''Tuesday, 3/6'''\\
''Lecture:'' Divide and conquer and preparation for midterm.\\

'''Thursday, 3/8'''\\
Midterm.


!!Week 7:

'''Tuesday, 2/28'''\\
''Lecture:'' Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
''Reading:'' Chapter 4.8 in Kleinberg and Tardos. \\

'''Thursday, 3/1'''\\
''Lecture:'' Divide and conquer [ [[Path:../../pdfs/05_divide-and-conquer.pdf| slides]] ].\\
''Reading:'' Chapter 5.1,5.2 in Kleinberg and Tardos. \\
Here's a cute youtube video on [[http://www.youtube.com/watch?v=wVPCT1VjySA&feature=topics | divide and conquer]].

!!Week 6:

'''Tuesday, 2/21'''\\
''Lecture:'' More MST algorithms (cont).\\
''Reading:'' Chapter 4.5 in Kleinberg and Tardos. \\

'''Thursday, 2/23'''\\
''Lecture:'' Data clustering, Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ]. \\
''Reading:'' Chapter 4.4, 4.7 in Kleinberg and Tardos. \\


!!Week 5:

'''Tuesday, 2/14'''\\
''Lecture:'' Introduction to greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf| slides]] ]. \\
''Reading:'' Chapter 4.1 in Kleinberg and Tardos. \\

'''Thursday, 2/16'''\\
''Lecture:'' Greedy algorithms for the minimum spanning tree problem [ [[Path:../../pdfs/04_mst.pdf| slides]] ]. \\
''Reading:'' Chapter 4.5, 4.7 in Kleinberg and Tardos. \\


!!Week 4:

'''Tuesday, 2/7'''\\
''Lecture:'' Graphs - Analysis of BFS, connected components, bipartite graphs. \\
''Reading:'' Chapter 3.2-3.4 in Kleinberg and Tardos. \\
Programming assignment #2 is available.

'''Thursday, 2/9'''\\
''Lecture:'' Graphs - Analysis of BFS, connected components, bipartite graphs. \\
''Reading:'' Chapter 3.5-3.6 in Kleinberg and Tardos. \\
Written assignment #3 is due.

!!Week 3:

'''Tuesday, 1/31'''\\
''Lecture:'' Finish the discussion of big O. \\

'''Thursday, 2/2'''\\
''Lecture:'' Graphs (representations of graphs and BFS) [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. Written homework 2 is due. \\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\


!!Week 2:

'''Tuesday, 1/24'''\\
''Lecture:'' Big O [ [[Path:../../pdfs/02_bigO.pdf | slides]] ]. \\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\

'''Thursday, 1/26'''\\
''Lecture:'' Big O continued. There will be quiz on big O. Written homework is due. \\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\
to:
Changed lines 6-7 from:
A crash course in Python. Here's the [[myset | set ]] Python class I showed.\\
The stable matching problem [ [[Path:../../pdfs/01_intro.pdf | slides]] ] (slides updated on 1/19 to include the example shown in class)\\
to:
A crash course in Python. Here's an example Python class: [[myset | set ]].\\
The stable matching problem.\\
Deleted lines 8-10:

'''Thursday, 1/19'''\\
''Lecture:'' We continued with the stable matching problem, and talked about representative problems that will be discussed in the course (almost finished the slides I posted on Tuesday).
Added lines 1-9:
!!Week 16:

'''Tuesday, 5/1'''\\
''Lecture:'' Coping with NP-completeness [ [[Path:../../pdfs/10-13_dealing_with_np_completeness.pdf | slides]] ].\\
''Reading:'' Chapters 10-13 in Kleinberg and Tardos

'''Thursday, 5/3'''\\
''Lecture:'' Review for final - please prepare questions!\\
Added lines 6-9:

'''Thursday, 4/26'''\\
''Lecture:'' More NP-complete problems [ [[Path:../../pdfs/08_np-complete-problems.pdf| slides]] ].\\
''Reading:'' Chapter 8.5 in Kleinberg and Tardos
Added lines 1-6:
!!Week 15:

'''Tuesday, 4/24'''\\
''Lecture:'' NP-completeness [ [[Path:../../pdfs/08_np-completeness.pdf| slides]] ].\\
''Reading:'' Chapter 8.3,8.4 in Kleinberg and Tardos
Changed line 8 from:
''Lecture:'' Reductions as a tool for showing problem hardness [ [[Path:../../pdfs/07_reductions.pdf| slides]] ].\\
to:
''Lecture:'' Reductions as a tool for showing problem hardness [ [[Path:../../pdfs/08_reductions.pdf| slides]] ].\\
Added lines 6-10:

'''Thursday, 4/19'''\\
''Lecture:'' Reductions as a tool for showing problem hardness [ [[Path:../../pdfs/07_reductions.pdf| slides]] ].\\
''Reading:'' Chapter 8.1,8.2 in Kleinberg and Tardos
Changed line 1 from:
!!Week 13:
to:
!!Week 14:
Added lines 1-7:
!!Week 13:

'''Tuesday, 4/17'''\\
''Lecture:'' Applications of the Maxflow problem (continue with Thursday's slide set)\\
''Reading:'' Chapter 7.6,7.7,7.10 in Kleinberg and Tardos
Changed lines 8-11 from:
''Lecture:'' Applications of the Maxflow problem [ [[Path:../../pdfs/07_maxflow-applications.pdf| slides]] ].\\
''Reading:'' Chapter 7.5,7.6 in Kleinberg and Tardos
to:
''Lecture:'' Applications of the Maxflow problem [ [[Path:../../pdfs/07_maxflow-applications.pdf| slides]] ]. And here's the maxflow [[Path:../../pdfs/07demo-maxflow.pdf| demo]] I showed.\\
''Reading:'' Chapter 7.5
in Kleinberg and Tardos
Changed line 132 from:
''Lecture:'' We continued with the stable matching problem, and talked about representative problems that will be discussed in the course (almost finished the slides I posted on Tuesday).
to:
''Lecture:'' We continued with the stable matching problem, and talked about representative problems that will be discussed in the course (almost finished the slides I posted on Tuesday).
Changed line 1 from:
!!Week 12:
to:
!!Week 13:
Added lines 1-11:
!!Week 12:

'''Tuesday, 4/10'''\\
''Lecture:'' The Maxflow problem and the Ford-Fulckerson algorithm (slides continued from Thursday).\\
''Reading:'' Chapter 7.1,7.2 in Kleinberg and Tardos

'''Thursday, 4/12'''\\
''Lecture:'' Applications of the Maxflow problem [ [[Path:../../pdfs/07_maxflow-applications.pdf| slides]] ].\\
''Reading:'' Chapter 7.5,7.6 in Kleinberg and Tardos
Changed line 3 from:
'''Tuesday, 3/27'''\\
to:
'''Tuesday, 4/3'''\\
Added lines 6-9:

'''Thursday, 4/5'''\\
''Lecture:'' We'll continue the Bellman-Ford algorithm and start on the Maxflow problem [ [[Path:../../pdfs/07_maxflow.pdf| slides]] ].\\
''Reading:'' Chapter 7.1,7.2 in Kleinberg and Tardos
Added lines 1-7:
!!Week 12:

'''Tuesday, 3/27'''\\
''Lecture:'' Shortest paths using dynamic programming - [ [[Path:../../pdfs/06_bellman-ford.pdf| slides]] ].\\
''Reading:'' Chapter 6.8 in Kleinberg and Tardos
Changed line 4 from:
''Lecture:'' Dynamic programming - subset sums and knapsack problems.\\
to:
''Lecture:'' Dynamic programming - subset sums and knapsack problems [ [[Path:../../pdfs/06_dynamic_programming.pdf| slides]] ].\\
Changed line 4 from:
''Lecture:'' Dynamic programming - subset sums and knapsack problems.
to:
''Lecture:'' Dynamic programming - subset sums and knapsack problems.\\
Changed line 4 from:
''Lecture:'' Dynamic programming - subset sums and knapsack problem.
to:
''Lecture:'' Dynamic programming - subset sums and knapsack problems.
Added lines 7-11:
'''Thursday, 3/29'''\\
''Lecture:'' Dynamic programming - sequence alignment [ [[Path:../../pdfs/06_sequence_alignment.pdf| slides]] ].\\
''Reading:'' Chapter 6.6, 6.7 in Kleinberg and Tardos
Changed lines 19-20 from:
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/06_dynamic_programming.pdf| slides]] ].\\
''Reading:'' Chapter 6.4 in Kleinberg and Tardos
to:
''Lecture:'' Dynamic programming - weighted interval scheduling [ [[Path:../../pdfs/06_dynamic_programming.pdf| slides]] ].\\
''Reading:'' Chapter 6.1,6.2 in Kleinberg and Tardos
Added lines 1-6:
!!Week 11:

'''Tuesday, 3/27'''\\
''Lecture:'' Dynamic programming - subset sums and knapsack problem.
''Reading:'' Chapter 6.4 in Kleinberg and Tardos
Changed line 15 from:
''Reading:'' Chapter 6.1,6.2,6.4 in Kleinberg and Tardos
to:
''Reading:'' Chapter 6.4 in Kleinberg and Tardos
Changed line 8 from:
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/05_multiplication.pdf| slides]] ].\\
to:
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/06_dynamic_programming.pdf| slides]] ].\\
Changed lines 8-9 from:
''Lecture:'' Dynamic programming
''Reading:'' Chapter 6 in Kleinberg and Tardos
to:
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/05_multiplication.pdf| slides]] ].\\
''Reading:'' Chapter 6.1,6.2,6.4
in Kleinberg and Tardos
Changed lines 4-6 from:
''Lecture:'' Divide and conquer - finding closest pair of points [ [[Path:../../pdfs/05_closest_pair.pdf| slides]] ].\\
''Reading:'' Chapter 5
.4 in Kleinberg and Tardos. \\
to:
''Lecture:'' Divide and conquer - finding closest pair of points [ [[Path:../../pdfs/05_closest_pair.pdf| slides]] ], integer multiplication [ [[Path:../../pdfs/05_multiplication.pdf| slides]] ].\\
''Reading:'' Chapter 5.4,5.5
in Kleinberg and Tardos. \\
Changed lines 8-9 from:
''Lecture:'' Divide and conquer - integer multiplication [ [[Path:../../pdfs/05_multiplication.pdf| slides]] ].\\
''Reading:'' Chapter 5.5 in Kleinberg and Tardos. \\
to:
''Lecture:'' Dynamic programming
''Reading:'' Chapter 6 in Kleinberg and Tardos
Changed line 8 from:
''Lecture:'' Divide and conquer - integer multiplication [ [[Path:../../pdfs/05_closest_pair.pdf| slides]] ].\\
to:
''Lecture:'' Divide and conquer - integer multiplication [ [[Path:../../pdfs/05_multiplication.pdf| slides]] ].\\
Changed lines 1-3 from:
!!Week 8:

'''Tuesday, 3/6'''\\
to:
!!Week 10:

'''Tuesday, 3/20'''\\
Added lines 6-18:

'''Thursday, 3/22'''\\
''Lecture:'' Divide and conquer - integer multiplication [ [[Path:../../pdfs/05_closest_pair.pdf| slides]] ].\\
''Reading:'' Chapter 5.5 in Kleinberg and Tardos. \\

!!Week 9:

Spring break

!!Week 8:

'''Tuesday, 3/6'''\\
''Lecture:'' Divide and conquer and preparation for midterm.\\
Changed line 1 from:
!!Week 7:
to:
!!Week 8:
Added lines 1-10:
!!Week 7:

'''Tuesday, 3/6'''\\
''Lecture:'' Divide and conquer - finding closest pair of points [ [[Path:../../pdfs/05_closest_pair.pdf| slides]] ].\\
''Reading:'' Chapter 5.4 in Kleinberg and Tardos. \\

'''Thursday, 3/8'''\\
Midterm.
Changed line 10 from:
''Fun'': Here's a cute youtube video on [[http://www.youtube.com/watch?v=wVPCT1VjySA&feature=topics | divide and conquer]].
to:
Here's a cute youtube video on [[http://www.youtube.com/watch?v=wVPCT1VjySA&feature=topics | divide and conquer]].
Added line 10:
''Fun'': Here's a cute youtube video on [[http://www.youtube.com/watch?v=wVPCT1VjySA&feature=topics | divide and conquer]].
Added lines 6-9:

'''Thursday, 3/1'''\\
''Lecture:'' Divide and conquer [ [[Path:../../pdfs/05_divide-and-conquer.pdf| slides]] ].\\
''Reading:'' Chapter 5.1,5.2 in Kleinberg and Tardos. \\
Added lines 1-6:
!!Week 7:

'''Tuesday, 2/28'''\\
''Lecture:'' Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
''Reading:'' Chapter 4.8 in Kleinberg and Tardos. \\
Changed lines 14-15 from:
''Lecture:'' Data clustering, Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ]. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
''Reading:'' Chapter 4.4, 4.7,4.8
in Kleinberg and Tardos. \\
to:
''Lecture:'' Data clustering, Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ]. \\
''Reading:'' Chapter 4.4, 4
.7 in Kleinberg and Tardos. \\
Changed line 4 from:
''Lecture:'' More MST algorithms (cont).
to:
''Lecture:'' More MST algorithms (cont).\\
Changed lines 4-6 from:
''Lecture:'' More MST algorithms, data clustering.
''Reading:'' Chapter 4.5, 4.7 in Kleinberg and Tardos. \\
to:
''Lecture:'' More MST algorithms (cont).
''Reading:'' Chapter 4.5 in Kleinberg and Tardos. \\
Changed lines 8-9 from:
''Lecture:'' Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ]. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
''Reading:'' Chapter 4.4, 4.8 in Kleinberg and Tardos. \\
to:
''Lecture:'' Data clustering, Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ]. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
''Reading:'' Chapter 4.4, 4.7,4.8 in Kleinberg and Tardos. \\
Changed line 8 from:
''Lecture:'' Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ] \\. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
to:
''Lecture:'' Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ]. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
Changed line 8 from:
''Lecture:'' Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ] \\. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ] .\\
to:
''Lecture:'' Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ] \\. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ].\\
Changed lines 4-6 from:
''Lecture:'' More MST algorithms, data clustering. Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ] \\
''Reading:'' Chapter 4.4,
4.5, 4.7 in Kleinberg and Tardos. \\
to:
''Lecture:'' More MST algorithms, data clustering.
''Reading:'' Chapter 4.5, 4.7 in Kleinberg and Tardos. \\
Changed line 8 from:
''Lecture:'' Dijkstra's algorithm (cont). Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ] .\\
to:
''Lecture:'' Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ] \\. Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ] .\\
Changed line 8 from:
''Lecture:'' Dijkstra's algorithm (cont). Huffman encoding.\\
to:
''Lecture:'' Dijkstra's algorithm (cont). Huffman encoding [ [[Path:../../pdfs/04_huffman.pdf| slides]] ] .\\
Changed line 4 from:
''Lecture:'' More MST algorithms, data clustering. Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] \\
to:
''Lecture:'' More MST algorithms, data clustering. Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] ] \\
Changed lines 4-5 from:
''Lecture:'' More MST algorithms, data clustering. \\
''Reading:'' Chapter 4.5, 4.7 in Kleinberg and Tardos. \\
to:
''Lecture:'' More MST algorithms, data clustering. Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf| slides]] \\
''Reading:'' Chapter 4.4, 4.5, 4.7 in Kleinberg and Tardos. \\

'''Thursday, 2/23'''\\
''Lecture:'' Dijkstra's algorithm (cont). Huffman encoding.\\
''Reading:'' Chapter 4.4, 4.8
in Kleinberg and Tardos. \\
Added lines 1-7:
!!Week 6:

'''Tuesday, 2/21'''\\
''Lecture:'' More MST algorithms, data clustering. \\
''Reading:'' Chapter 4.5, 4.7 in Kleinberg and Tardos. \\
Added lines 6-10:

'''Thursday, 2/16'''\\
''Lecture:'' Greedy algorithms for the minimum spanning tree problem [ [[Path:../../pdfs/04_mst.pdf| slides]] ]. \\
''Reading:'' Chapter 4.5, 4.7 in Kleinberg and Tardos. \\
Added lines 1-6:
!!Week 5:

'''Tuesday, 2/14'''\\
''Lecture:'' Introduction to greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf| slides]] ]. \\
''Reading:'' Chapter 4.1 in Kleinberg and Tardos. \\
Added lines 7-11:

'''Thursday, 2/9'''\\
''Lecture:'' Graphs - Analysis of BFS, connected components, bipartite graphs. \\
''Reading:'' Chapter 3.5-3.6 in Kleinberg and Tardos. \\
Written assignment #3 is due.
Added lines 1-7:
!!Week 4:

'''Tuesday, 2/7'''\\
''Lecture:'' Graphs - Analysis of BFS, connected components, bipartite graphs. \\
''Reading:'' Chapter 3.2-3.4 in Kleinberg and Tardos. \\
Programming assignment #2 is available.
Changed line 14 from:
''Lecture:'' Graphs [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. Written homework 2 is due. \\
to:
''Lecture:'' Graphs (representations of graphs and BFS) [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. Written homework 2 is due. \\
Changed lines 4-6 from:
''Lecture:'' Finish the discussion of big O, and start on graphs [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. \\
''Reading:'' Chapter 3 in Kleinberg and Tardos.
\\
to:
''Lecture:'' Finish the discussion of big O. \\
Changed line 7 from:
''Lecture:'' More graphs - continuing tuesday's slide set. Written homework 2 is due. \\
to:
''Lecture:'' Graphs [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. Written homework 2 is due. \\
Added lines 1-11:
!!Week 3:

'''Tuesday, 1/31'''\\
''Lecture:'' Finish the discussion of big O, and start on graphs [ [[Path:../../pdfs/03_graphs.pdf | slides]] ]. \\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\

'''Thursday, 2/2'''\\
''Lecture:'' More graphs - continuing tuesday's slide set. Written homework 2 is due. \\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\
Changed line 7 from:
'''Tuesday, 1/26'''\\
to:
'''Thursday, 1/26'''\\
Changed lines 1-2 from:
!!Week 1:
to:
!!Week 2:
Added lines 1-12:

!!Week 1:

'''Tuesday, 1/24'''\\
''Lecture:'' Big O [ [[Path:../../pdfs/02_bigO.pdf | slides]] ]. \\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\

'''Tuesday, 1/26'''\\
''Lecture:'' Big O continued. There will be quiz on big O. Written homework is due. \\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\
Changed lines 4-6 from:
''Lecture:'' Course introduction - the stable marriage problem [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
to:
''Lecture:'' Course introduction\\
A crash course in Python. Here's the
[[myset | set ]] Python class I showed.\\
The stable matching problem [ [[Path:../../pdfs/01_intro.pdf | slides]] ] (slides updated on 1/19 to include the example shown in class)
\\
Changed line 10 from:
''Lecture:'' We will continue with the stable marriage problem. Here is the [[myset | set ]] python class.
to:
''Lecture:'' We continued with the stable matching problem, and talked about representative problems that will be discussed in the course (almost finished the slides I posted on Tuesday).
Deleted line 0:
Changed line 3 from:
'''Tuesday, 1/18'''\\
to:
'''Tuesday, 1/17'''\\
Changed line 7 from:
'''Thursday, 1/20'''\\
to:
'''Thursday, 1/19'''\\
Changed lines 1-150 from:
!!Week 16:

'''Tuesday, 5/3 '''\\
''Lecture:'' No class

'''Thursday, 4/28'''\\
''Lecture:'' Review for final


!!Week 15:

'''Tuesday, 4/26'''\\
''Lecture:'' Local search algorithms [ [[Path:../../pdfs/12_localsearch.pdf | slides]] ].\\
''Reading:'' Sections 12.1 - 12.5 in Kleinberg and Tardos

'''Thursday, 4/28'''\\
''Lecture:'' Local search (continued).

!!Week 14:

'''Tuesday, 4/19'''\\
''Lecture:'' NP, NP-completeness and the class co-NP.\\
''Reading:'' Section 8.4 and 8.9 in Kleinberg and Tardos. Papadimitriou has a nice retrospective on the importance of NP-completeness [ [[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.32.8685&rep=rep1&type=pdf | pdf]] ]\\

'''Thursday, 4/21'''\\
''Lecture:'' NP-complete problems.\\
''Reading:'' Sections 8.5,8.7 in Kleinberg and Tardos [ [[Path:../../pdfs/08_np-complete-problems.pdf | slides]] ] . \\


!!Week 13:

'''Tuesday, 4/12'''\\
''Lecture:'' NP and computational intractability - polynomial reductions [ [[Path:../../pdfs/08_reductions.pdf | slides]] ].\\
''Reading:'' Section 8.1 and 8.2 in Kleinberg and Tardos. \\

'''Thursday, 4/14'''\\
''Lecture:'' NP and NP-completeness [ [[Path:../../pdfs/08_np-completeness.pdf | slides]] ] \\
''Reading:'' Sections 8.3 and 8.4 in Kleinberg and Tardos. \\

!!Week 12:

'''Tuesday, 4/5'''\\
''Lecture:'' Sequence alignment in linear space using dynamic programming and divide and conquer.\\
''Reading:'' Section 6.6 in Kleinberg and Tardos. \\

'''Thursday, 4/7'''\\
''Lecture:'' Shortest paths using dynamic programming [ [[Path:../../pdfs/06_bellman-ford.pdf | slides]] ].\\
''Reading:'' Section 6.8 in Kleinberg and Tardos. \\


!!Week 11:

'''Tuesday, 3/29'''\\
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/06_dynamic_programming.pdf | slides]] ] \\
''Reading:'' Sections 6.1, 6.2,6.4 in Kleinberg and Tardos. \\

'''Thursday, 3/31'''\\
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/06_sequence_alignment.pdf | slides]] ] \\
''Reading:'' Sections 6.6 in Kleinberg and Tardos. \\


!!Week 10:

'''Tuesday, 3/22'''\\
''Lecture:'' Recurrence relations, counting inversions [ [[Path:../../pdfs/05_counting_inversions.pdf | slides]] ] \\
''Reading:'' Sections 5.2, 5.3 in Kleinberg and Tardos. \\


'''Thursday, 3/24'''\\
''Lecture:'' Closest pair of points [ [[Path:../../pdfs/05_closest_pair.pdf | slides]] ] \\
''Reading:'' Sections 5.5 in Kleinberg and Tardos. \\

!!Week 9:

Spring break!

!!Week 8:

'''Tuesday, 3/8'''\\
''Lecture:'' Exam prep, Divide and conquer algorithms [ [[Path:../../pdfs/05_divide-and-conquer.pdf | slides]] ] \\
''Reading:'' Sections 5.1,5.2 in Kleinberg and Tardos. \\

'''Thursday, 3/10'''\\
''Lecture:'' Midterm exam.

!!Week 7:

'''Tuesday, 3/1'''\\
''Lecture:'' Greedy algorithms for the minimum spanning tree problem [ [[Path:../../pdfs/04_mst.pdf | slides]] ] \\
''Reading:'' Sections 4.5,4.7 in Kleinberg and Tardos. \\

'''Thursday, 3/3'''\\
''Lecture:'' More on the minimum spanning tree problem.

!!Week 6:

'''Tuesday, 2/22'''\\
''Lecture:'' Greedy scheduling algorithms \\
''Reading:'' Sections 4.1,4.2 in Kleinberg and Tardos. \\

'''Thursday, 2/24'''\\
''Lecture:'' Shortest paths and Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf | slides]] ] \\
''Reading:'' Sections 4.4 in Kleinberg and Tardos. \\


!!Week 5:

'''Tuesday, 2/15'''\\
''Lecture:'' Finish graph algorithms - DAGs and topological ordering. Greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
''Reading:'' Sections 4.1,4.2 in Kleinberg and Tardos. \\
Written assignment 2 has been posted.\\

'''Thursday, 2/17'''\\
''Lecture:'' Greedy algorithms - interval scheduling \\
''Reading:'' Sections 4.1,4.2 in Kleinberg and Tardos. \\

!!Week 4:

'''Tuesday, 2/8'''\\
''Lecture:'' Graph algorithms. Analysis of BFS and DFS. Bipartite graphs.\\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\

'''Thursday, 2/10'''\\
''Lecture:'' Graph algorithms. Connectivity in directed graphs\\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\


!!Week 3:

'''Tuesday, 2/1'''\\
''Lecture:'' Continued discussion of big-O\\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\

'''Thursday, 2/3'''\\
''Lecture:'' Graphs. Graph traversal with BFS [ [[Path:../../pdfs/03_graphs.pdf | slides]] ] \\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\



!!Week 2:

'''Tuesday, 1/25'''\\
''Lecture:'' Representative problems\\
''Reading:'' Section 1.2 in Kleinberg and Tardos. \\

'''Thursday, 1/27'''\\
''Lecture:'' Measuring algorithm efficiency [ [[Path:../../pdfs/02_bigO.pdf | slides]] ] \\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\
to:
Changed line 9 from:
''Lecture:'' We will continue with the stable marriage problem. Here is the [[myset | set ]] python class that I showed.
to:
''Lecture:'' We will continue with the stable marriage problem. Here is the [[myset | set ]] python class.
Changed line 13 from:
''Lecture:'' Local search algorithms [ [[Path:../../pdfs/08_np-complete-problems.pdf | slides]] ].\\
to:
''Lecture:'' Local search algorithms [ [[Path:../../pdfs/12_localsearch.pdf | slides]] ].\\
May 05, 2011, at 03:13 PM MST by 129.82.44.191 -
Added lines 1-9:
!!Week 16:

'''Tuesday, 5/3 '''\\
''Lecture:'' No class

'''Thursday, 4/28'''\\
''Lecture:'' Review for final
Added lines 16-17:
'''Thursday, 4/28'''\\
''Lecture:'' Local search (continued).
Added lines 1-7:
!!Week 15:

'''Tuesday, 4/26'''\\
''Lecture:'' Local search algorithms [ [[Path:../../pdfs/08_np-complete-problems.pdf | slides]] ].\\
''Reading:'' Sections 12.1 - 12.5 in Kleinberg and Tardos
Changed lines 9-11 from:
''Reading:'' Sections 8.5,8.7 in Kleinberg and Tardos [ [[http://www.cs.colostate.edu/~sutton/cs320/08_np-complete-problems.pdf | slides]] ] . \\
to:
''Reading:'' Sections 8.5,8.7 in Kleinberg and Tardos [ [[Path:../../pdfs/08_np-complete-problems.pdf | slides]] ] . \\
Changed line 19 from:
''Lecture:'' NP and NP-completeness [ [[http://www.cs.colostate.edu/~sutton/cs320/08_np-completeness.pdf | slides]] ] \\
to:
''Lecture:'' NP and NP-completeness [ [[Path:../../pdfs/08_np-completeness.pdf | slides]] ] \\
Changed line 9 from:
''Reading:'' Sections 8.5-8.8 in Kleinberg and Tardos. \\
to:
''Reading:'' Sections 8.5,8.7 in Kleinberg and Tardos [ [[http://www.cs.colostate.edu/~sutton/cs320/08_np-complete-problems.pdf | slides]] ] . \\
Changed line 5 from:
''Reading:'' Section 8.4 and 8.9 in Kleinberg and Tardos. \\
to:
''Reading:'' Section 8.4 and 8.9 in Kleinberg and Tardos. Papadimitriou has a nice retrospective on the importance of NP-completeness [ [[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.32.8685&rep=rep1&type=pdf | pdf]] ]\\
Added lines 1-11:
!!Week 14:

'''Tuesday, 4/19'''\\
''Lecture:'' NP, NP-completeness and the class co-NP.\\
''Reading:'' Section 8.4 and 8.9 in Kleinberg and Tardos. \\

'''Thursday, 4/21'''\\
''Lecture:'' NP-complete problems.\\
''Reading:'' Sections 8.5-8.8 in Kleinberg and Tardos. \\
Changed lines 5-6 from:
''Reading:'' Section 8.1,8.2 in Kleinberg and Tardos. \\
to:
''Reading:'' Section 8.1 and 8.2 in Kleinberg and Tardos. \\

'''Thursday, 4/14'''\\
''Lecture:'' NP and NP-completeness [ [[http://www.cs.colostate.edu/~sutton/cs320/08_np-completeness.pdf | slides]] ] \\
''Reading:'' Sections 8.3 and 8.4
in Kleinberg and Tardos. \\
Changed line 17 from:
'''Tuesday, 4/7'''\\
to:
'''Thursday, 4/7'''\\
Added lines 1-6:
!!Week 13:

'''Tuesday, 4/12'''\\
''Lecture:'' NP and computational intractability - polynomial reductions [ [[Path:../../pdfs/08_reductions.pdf | slides]] ].\\
''Reading:'' Section 8.1,8.2 in Kleinberg and Tardos. \\
Changed line 8 from:
''Lecture:'' Shortest paths using dynamic programming [ [[Path:../../pdfs/06_dynamic_programming.pdf | slides]] ].\\
to:
''Lecture:'' Shortest paths using dynamic programming [ [[Path:../../pdfs/06_bellman-ford.pdf | slides]] ].\\
Changed lines 1-2 from:
!!Week 10:
to:
!!Week 12:

'''Tuesday, 4/5'''\\
''Lecture:'' Sequence alignment in linear space using dynamic programming and divide and conquer.\\
''Reading:'' Section 6.6 in Kleinberg and Tardos. \\

'''Tuesday, 4/7'''\\
''Lecture:'' Shortest paths using dynamic programming [ [[Path:../../pdfs/06_dynamic_programming.pdf | slides]] ].\\
''Reading:'' Section 6.8 in Kleinberg and Tardos. \\


!!Week 11
:
Changed line 20 from:
''Reading:'' Sections 6.6, 6.7 in Kleinberg and Tardos. \\
to:
''Reading:'' Sections 6.6 in Kleinberg and Tardos. \\
Changed lines 5-9 from:
''Reading:'' Sections 6.1, 6.2 in Kleinberg and Tardos. \\
to:
''Reading:'' Sections 6.1, 6.2,6.4 in Kleinberg and Tardos. \\

'''Thursday, 3/31'''\\
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/06_sequence_alignment.pdf | slides]] ] \\
''Reading:'' Sections 6.6, 6.7
in Kleinberg and Tardos. \\
Added lines 3-9:
'''Tuesday, 3/29'''\\
''Lecture:'' Dynamic programming [ [[Path:../../pdfs/06_dynamic_programming.pdf | slides]] ] \\
''Reading:'' Sections 6.1, 6.2 in Kleinberg and Tardos. \\


!!Week 10:
Changed line 15 from:
'''Tuesday, 3/24'''\\
to:
'''Thursday, 3/24'''\\
Added lines 6-10:


'''Tuesday, 3/24'''\\
''Lecture:'' Closest pair of points [ [[Path:../../pdfs/05_closest_pair.pdf | slides]] ] \\
''Reading:'' Sections 5.5 in Kleinberg and Tardos. \\
Changed line 4 from:
''Lecture:'' Divide and conquer algorithms and Counting Inversions [ [[Path:../../pdfs/05_counting_inversions.pdf | slides]] ] \\
to:
''Lecture:'' Recurrence relations, counting inversions [ [[Path:../../pdfs/05_counting_inversions.pdf | slides]] ] \\
Added lines 1-10:
!!Week 10:

'''Tuesday, 3/22'''\\
''Lecture:'' Divide and conquer algorithms and Counting Inversions [ [[Path:../../pdfs/05_counting_inversions.pdf | slides]] ] \\
''Reading:'' Sections 5.2, 5.3 in Kleinberg and Tardos. \\

!!Week 9:

Spring break!
Added lines 1-9:
!!Week 8:

'''Tuesday, 3/8'''\\
''Lecture:'' Exam prep, Divide and conquer algorithms [ [[Path:../../pdfs/05_divide-and-conquer.pdf | slides]] ] \\
''Reading:'' Sections 5.1,5.2 in Kleinberg and Tardos. \\

'''Thursday, 3/10'''\\
''Lecture:'' Midterm exam.
Added lines 7-8:
'''Thursday, 3/3'''\\
''Lecture:'' More on the minimum spanning tree problem.
Added lines 1-7:
!!Week 7:

'''Tuesday, 3/1'''\\
''Lecture:'' Greedy algorithms for the minimum spanning tree problem [ [[Path:../../pdfs/04_mst.pdf | slides]] ] \\
''Reading:'' Sections 4.5,4.7 in Kleinberg and Tardos. \\
Added lines 1-11:
!!Week 6:

'''Tuesday, 2/22'''\\
''Lecture:'' Greedy scheduling algorithms \\
''Reading:'' Sections 4.1,4.2 in Kleinberg and Tardos. \\

'''Thursday, 2/24'''\\
''Lecture:'' Shortest paths and Dijkstra's algorithm [ [[Path:../../pdfs/04_dijkstra.pdf | slides]] ] \\
''Reading:'' Sections 4.4 in Kleinberg and Tardos. \\
Changed line 6 from:
Written assignment 2 has been posted.
to:
Written assignment 2 has been posted.\\
Changed line 4 from:
''Lecture:'' Finish graph algorithms - DAGs and topological ordering. Greedy algorithms - interval scheduling [ [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
to:
''Lecture:'' Finish graph algorithms - DAGs and topological ordering. Greedy algorithms [ [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
Added lines 8-10:
'''Thursday, 2/17'''\\
''Lecture:'' Greedy algorithms - interval scheduling \\
''Reading:'' Sections 4.1,4.2 in Kleinberg and Tardos. \\
Changed line 4 from:
''Lecture:'' DAGs and topological ordering. Greedy algorithms - interval scheduling [ [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
to:
''Lecture:'' Finish graph algorithms - DAGs and topological ordering. Greedy algorithms - interval scheduling [ [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
Changed line 4 from:
''Lecture:'' DAGs and topological ordering. Greedy algorithms - interval scheduling [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
to:
''Lecture:'' DAGs and topological ordering. Greedy algorithms - interval scheduling [ [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
Added lines 1-8:
!!Week 5:

'''Tuesday, 2/15'''\\
''Lecture:'' DAGs and topological ordering. Greedy algorithms - interval scheduling [[Path:../../pdfs/04_greedy.pdf | slides]] ] \\
''Reading:'' Sections 4.1,4.2 in Kleinberg and Tardos. \\
Written assignment 2 has been posted.
Changed line 16 from:
''Lecture:'' Graph algorithms. Connectivity in directed graphs, DAGs and topological ordering.\\
to:
''Lecture:'' Graph algorithms. Connectivity in directed graphs\\
Added lines 5-8:
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\

'''Thursday, 2/10'''\\
''Lecture:'' Graph algorithms. Connectivity in directed graphs, DAGs and topological ordering.\\
Changed line 11 from:
''Lecture:'' We will continue the discussion of big-O\\
to:
''Lecture:'' Continued discussion of big-O\\
Changed line 15 from:
''Lecture:'' Graphs. We started the discussion of BFS [ [[Path:../../pdfs/03_graphs.pdf | slides]] ] \\
to:
''Lecture:'' Graphs. Graph traversal with BFS [ [[Path:../../pdfs/03_graphs.pdf | slides]] ] \\
Added lines 1-7:
!!Week 4:

'''Tuesday, 2/8'''\\
''Lecture:'' Graph algorithms. Analysis of BFS and DFS. Bipartite graphs.\\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\
Changed line 15 from:
''Lecture:'' Graph algorithms [ [[Path:../../pdfs/03_graphs.pdf | slides]] ] \\
to:
''Lecture:'' Graphs. We started the discussion of BFS [ [[Path:../../pdfs/03_graphs.pdf | slides]] ] \\
Added lines 6-11:

'''Thursday, 2/3'''\\
''Lecture:'' Graph algorithms [ [[Path:../../pdfs/03_graphs.pdf | slides]] ] \\
''Reading:'' Chapter 3 in Kleinberg and Tardos. \\
Added lines 1-5:
!!Week 3:

'''Tuesday, 2/1'''\\
''Lecture:'' We will continue the discussion of big-O\\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\
Added lines 1-12:

!!Week 2:

'''Tuesday, 1/25'''\\
''Lecture:'' Representative problems\\
''Reading:'' Section 1.2 in Kleinberg and Tardos. \\

'''Thursday, 1/27'''\\
''Lecture:'' Measuring algorithm efficiency [ [[Path:../../pdfs/02_bigO.pdf | slides]] ] \\
''Reading:'' Chapter 2 in Kleinberg and Tardos. \\
Changed line 8 from:
''Lecture:'' We will continue with the stable marriage problem.
to:
''Lecture:'' We will continue with the stable marriage problem. Here is the [[myset | set ]] python class that I showed.
Changed line 4 from:
''Lecture:'' Course introduction [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
to:
''Lecture:'' Course introduction - the stable marriage problem [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
Added lines 6-8:

'''Thursday, 1/20'''\\
''Lecture:'' We will continue with the stable marriage problem.
Deleted lines 5-6:

[[intro_lab]]
Added line 7:
[[intro_lab]]
Deleted line 0:
Changed lines 3-10 from:
'''Wednesday, 1/20'''\\
''Lecture:'' Course introduction; [[http://www.sciencemag.org/cgi/content/short/325/5940/541 | why programming?]] [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
''Reading:'' Chapter 1 in [[http://openbookproject.net/thinkcs/python/english2e/ch01.html | How to think like a computer scientist]]. \\


'''Friday, 1/22'''\\
''Lecture:'' Our [[first program]], [[programming errors]], Python [[types]], [[variables]]\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch02.html | 2]].\\
to:
'''Tuesday, 1/18'''\\
''Lecture:'' Course introduction [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
''Reading
:'' Chapter 1 in Kleinberg and Tardos. \\
Changed lines 1-212 from:
!!Week 15:

'''Monday, 4/26'''

''Lecture:'' Plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]]. \\
''Reading:'' The matplotlib [[http://matplotlib.sourceforge.net/users/pyplot_tutorial.html|tutorial]].\\
''Lab:'' [[lab14 | lab 14]]

'''Wednesday, 4/28'''

''Lecture:'' Plotting: Generating [[subplots]], [[histograms]], [[legends]].

'''Friday, 4/30'''

''Lecture:'' Review for exam.


!!Week 14:

'''Monday, 4/26'''

''Lecture:'' Using biopython for DNA sequence motifs [[biopython-motif|motifs]]. Example data: the [[Path:../../data/MA0024.1.pfm|E2F1 motif]] and [[Path:../../data/human_promoter500.fasta|human promoter sequences]].\\
''Lab:'' [[lab13 | lab 13]]

'''Wednesday, 4/28'''

''Lecture:'' More about motif finding.

'''Friday, 4/30'''

''Lecture:'' Finish motif finding with biopython.

!!Week 13:

'''Monday, 4/19'''\\
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions.\\
''Lab:'' [[lab12 | lab 12]]

'''Wednesday, 4/21'''\\
''Lecture:'' We will start playing with biopython [[biopython-seq|sequence objects]].\\
''Reading:'' Chapter 3 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc16 | tutorial]].

'''Friday, 4/23'''\\
''Lecture:'' We will use biopython to [[biopython-parse|parse]] sequence files.\\
Here's the data for these examples: Calmodulin sequences in [[Path:../../data/cam.fasta | fasta]], [[Path:../../data/cam.txt|uniprot]], and [[Path:../../data/cam.gbk|genbank]] formats. \\
''Reading:'' Chapter 2 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc10 | tutorial]].

!!Week 12:

'''Monday, 4/12'''\\
''Lecture:'' Inheritance in python [[inheritance| the shapes example]].\\
''Lab:'' [[lab11 | lab 11]]\\
''Assignment:'' [[Assignment11 | Assignment 11]]

'''Wednesday, 4/14'''\\
''Lecture:'' [[interfaces]] in Python. New style classes [[new classes | example]]. See also the
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation]].

'''Friday, 4/16'''\\
''Lecture:'' Methods for solving [[Assignment9 | assignment 9]].

!!Week 11:

'''Monday, 4/5'''\\
''Lecture:'' Python classes - representing [[shapes|shapes]]; digression: [[random numbers]]\\
''Lab:'' [[lab10 | lab 10]]\\
''Assignment:'' [[Assignment10 |Assignment 10]]

'''Wednesday, 4/7'''\\
''Lecture:'' Operator overloading [[overloading|example]]; the [[cards | cards]] example.\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch15.html#operator-overloading|15]].

'''Friday, 4/9'''\\
''Lecture:'' Python classes (cont)


!!Week 10:

'''Monday, 3/29'''\\
''Lecture:'' Using Python object - continued.\\
''Lab:'' [[lab9 | lab 9]]\\
''Assignments:'' [[Assignment9 |Assignment 9]]

'''Wednesday, 3/31'''\\
''Lecture:'' Introduction to Python classes. code [[classes introduction|examples]].\\
''Reading:'' [[http://openbookproject.net/thinkcs/python/english2e/ch13.html|chapter 13]] and [[http://openbookproject.net/thinkcs/python/english2e/ch15.html|chapter 15]]

'''Friday, 4/2'''\\
''Lecture:'' No lecture today due to [[http://futurevisions.colostate.edu| future visions]].

!!Week 9:

'''Monday, 3/22'''\\
''Lecture:'' dictionaries. code [[dictionaries|examples]].\\
''Lab:'' [[lab8 | lab 8]]\\
''Assignments:'' [[Assignment8 |Assignment 8]]\\
''Reading:'' [[http://openbookproject.net/thinkcs/python/english2e/ch12.html|chapter 12]]

'''Wednesday, 3/24'''\\
''Lecture:'' tuples ([[tuples|examples]]); functions revisited: variable length argument lists using [[tuple_var_args|tuples]] and [[dictionary_var_args|dictionaries]].

'''Friday, 3/26'''\\
''Lecture:'' Using python objects - object methods of [[using objects|strings, lists, and dictionaries]].

!!Week 8:

'''Monday, 3/8'''\\
''Lecture:'' recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. code [[recursion|examples]].\\
''Lab:'' [[lab7 | lab 7]]\\
''Assignments:'' [[Assignment7 |Assignment 7]]\\
''Reading:'' [[http://openbookproject.net/thinkcs/python/english2e/ch11.html#recursion|chapter 11]]

'''Wednesday, 3/10'''\\
''Lecture:'' recursion - continued. More examples: [[factorial]], [[recursive binary search]].

'''Friday, 3/12'''\\
''Lecture:'' midterm

!!Week 7:

'''Monday, 3/1'''\\
''Lecture:'' binary search [[binary search | code]]; measuring the efficiency of algorithms [ [[Path:../../pdfs/04_complexity.pdf | slides]] ]\\
''Lab:'' [[lab6 | lab 6]]\\
''Assignments:'' [[Assignment6 |Assignment 6]]

'''Wednesday, 3/3'''\\
''Lecture:'' algorithm efficiency (cont).

'''Friday, 3/5'''\\
''Lecture:'' Exceptions [[exceptions | code]]; command line arguments [[argv_example| example]].\\
''Reading:'' Exceptions section in [[http://openbookproject.net/thinkcs/python/english2e/ch11.html#exceptions | chapter 11]].

!!Week 6:

'''Monday, 2/22'''\\
''Lecture:'' Strings and lists ([[strings and lists | code]]), iterators ([[iterators | code]]), files ([[files | code]]).\\
''Lab:'' [[lab5 | lab 5]]\\
''Assignments:'' [[Assignment5 |Assignment 5]]

'''Wednesday, 2/24'''\\
''Lecture:'' Sorting algorithms [ [[Path:../../pdfs/03_sorting.pdf | slides]] ]; here's the [[sorting|code]].

'''Friday, 2/26'''\\
''Lecture:'' Sorting algorithms, continued;


!!Week 5:

'''Monday, 2/15'''\\
''Lecture:'' Strings (continued), string formatting ([[string formatting | examples]]).\\
''Lab:'' [[lab4 | lab 4]]\\
''Assignments:'' [[Assignment4 |Assignment 4]]

'''Wednesday, 2/17'''\\

''Lecture:'' Lists ([[lists]])\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]].

'''Friday, 2/19'''\\
''Lecture:'' Lists are mutable ([[list mutability | code]]), lists as function parameters ([[lists as parameters | code]]), nested lists ([[nested lists | code]]).\\


!!Week 4:

'''Monday, 2/8'''\\
''Lecture:'' While loops (cont): printing [[tables]]. Iteration using [[for loops]].\\
''Lab:'' [[lab3 | Lab 3]]\\
''Assignments:'' [[Assignment3 |Assignment 3]]

'''Wednesday, 2/10'''\\
''Lecture:'' For loops (cont): [[nestedLoops | nested loops]]. Strings ([[string_examples| examples]]).\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch07.html | 7]].

'''Friday, 2/12'''\\
''Lecture:'' Strings (continued).\\


!!Week 3:

'''Monday, 2/1'''\\
''Lecture:'' Conditionals - the if statement [[boolean variables]], [[conditionals]], [[sort names]], [[letter grade]] calculator, a better version of [[letter grade2 | letter grade]].\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch04.html | 4]].\\
''Lab:'' [[lab2 | Lab 2]]\\
''Assignments:'' [[Assignment2 |Assignment 2]]

'''Wednesday, 2/3'''\\
''Lecture:'' Functions that return a value. Examples: [[area]], [[divisibility]], [[absolute value]].\\
Iteration - the while statement. Here's an [[while example|example]].\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch05.html | 5]],
chapter [[http://openbookproject.net/thinkcs/python/english2e/ch06.html | 6]] \\


'''Friday, 2/5'''\\
''Lecture:'' While loops: [[inputValidation | input validation]].\\

!!Week 2:

'''Monday, 1/25'''\\
''Lecture:'' Python [[expressions]], and [[input]]. Putting it together: [[celsius2fahreheit | Celsius to fahreheit converter]] \\
''Lab:'' [[lab1]]\\
''Assignments:'' [[Assignment1]]

'''Wednesday, 1/27'''\\
''Lecture:'' Functions [ [[Path:../../pdfs/02_functions.pdf | slides]] ]. [[draw_rectangle]], [[celsius2fahrenheit]], [[functions]].
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch03.html | 3]].\\


'''Friday, 1/29'''\\
''Lecture:'' Functions - continued [[local variables]], conditionals - the if statement [[boolean variables]].\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch04.html | 4]].\\
to:
Deleted lines 11-12:

!
Changed line 5 from:
''Lecture:'' Plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]]. Generating [[subplots]].\\
to:
''Lecture:'' Plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]]. \\
Added lines 8-15:

'''Wednesday, 4/28'''

''Lecture:'' Plotting: Generating [[subplots]], [[histograms]], [[legends]].

'''Friday, 4/30'''

''Lecture:'' Review for exam.
Changed line 6 from:
''Reading:'' The matplotlib [[http://matplotlib.sourceforge.net/users/pyplot_tutorial.html|tutorial]].
to:
''Reading:'' The matplotlib [[http://matplotlib.sourceforge.net/users/pyplot_tutorial.html|tutorial]].\\
Added line 7:
''Lab:'' [[lab14 | lab 14]]
Changed lines 5-7 from:
''Lecture:'' Plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]]. Generating [[subplots]].
to:
''Lecture:'' Plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]]. Generating [[subplots]].\\
''Reading:'' The matplotlib [[http://matplotlib.sourceforge.net/users/pyplot_tutorial.html|tutorial]].
May 03, 2010, at 07:37 AM MST by 71.196.160.210 -
Changed lines 1-2 from:
!!Week 14:
to:
!!Week 15:
Added lines 5-10:
''Lecture:'' Plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]]. Generating [[subplots]].

!!Week 14:

'''Monday, 4/26'''
Changed line 20 from:
''Lecture:'' Finish motif finding with biopython. Start plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]].
to:
''Lecture:'' Finish motif finding with biopython.
April 29, 2010, at 09:21 PM MST by 71.196.160.210 -
Added lines 7-14:

'''Wednesday, 4/28'''

''Lecture:'' More about motif finding.

'''Friday, 4/30'''

''Lecture:'' Finish motif finding with biopython. Start plotting with [[http://matplotlib.sf.net|matplotlib]]. Here's code for a simple [[sine curve|plot]].
Changed lines 6-7 from:
to:
''Lab:'' [[lab13 | lab 13]]
Changed line 12 from:
''Lab:'' [[[[lab12 | lab 12]]
to:
''Lab:'' [[lab12 | lab 12]]
Changed line 1 from:
!!Week 13:
to:
!!Week 14:
Added lines 3-8:
'''Monday, 4/26'''

''Lecture:'' Using biopython for DNA sequence motifs [[biopython-motif|motifs]]. Example data: the [[Path:../../data/MA0024.1.pfm|E2F1 motif]] and [[Path:../../data/human_promoter500.fasta|human promoter sequences]].\\

!!Week 13:
Changed lines 18-19 from:
''Lecture:'' We will use biopython to [[biopython-parse|parse]] sequence files, and to hanld [[biopython-motif|motifs]].\\
Here's the
data for these examples: Calmodulin sequences in [[Path:../../data/cam.fasta | fasta]], [[Path:../../data/cam.txt|uniprot]], and [[Path:../../data/cam.gbk|genbank]] formats. The [[Path:../../data/MA0024.1.pfm|E2F1 motif]] and [[Path:../../data/human_promoter500.fasta|human promoter sequences]].\\
to:
''Lecture:'' We will use biopython to [[biopython-parse|parse]] sequence files.\\
Here's the data for these examples: Calmodulin sequences in
[[Path:../../data/cam.fasta | fasta]], [[Path:../../data/cam.txt|uniprot]], and [[Path:../../data/cam.gbk|genbank]] formats. \\
Changed line 13 from:
Here's the data for these examples: Calmodulin sequences in [[Path:../../data/cam.fasta | fasta]], [[Path:../../data/cam.txt|uniprot]], and [[Path:../../data/cam.gbk|genbank]] formats. The [[Path:../../data/MA0024.1.pfm|E2F1 motif]] and [[Path:../../data/human_promoter500.fasta|human promoter sequences]].
to:
Here's the data for these examples: Calmodulin sequences in [[Path:../../data/cam.fasta | fasta]], [[Path:../../data/cam.txt|uniprot]], and [[Path:../../data/cam.gbk|genbank]] formats. The [[Path:../../data/MA0024.1.pfm|E2F1 motif]] and [[Path:../../data/human_promoter500.fasta|human promoter sequences]].\\
Added line 13:
Here's the data for these examples: Calmodulin sequences in [[Path:../../data/cam.fasta | fasta]], [[Path:../../data/cam.txt|uniprot]], and [[Path:../../data/cam.gbk|genbank]] formats. The [[Path:../../data/MA0024.1.pfm|E2F1 motif]] and [[Path:../../data/human_promoter500.fasta|human promoter sequences]].
Added lines 10-13:

'''Friday, 4/23'''\\
''Lecture:'' We will use biopython to [[biopython-parse|parse]] sequence files, and to hanld [[biopython-motif|motifs]].\\
''Reading:'' Chapter 2 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc10 | tutorial]].
Deleted line 4:
''Reading:'' Chapter 3 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc16 | tutorial]].\\
Added line 9:
''Reading:'' Chapter 3 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc16 | tutorial]].
Changed line 4 from:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].\\
to:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions.\\
Added lines 7-9:

'''Wednesday, 4/21'''\\
''Lecture:'' We will start playing with biopython [[biopython-seq|sequence objects]].\\
Added lines 1-7:
!!Week 13:

'''Monday, 4/19'''\\
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].\\
''Reading:'' Chapter 3 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc16 | tutorial]].\\
''Lab:'' [[[[lab12 | lab 12]]
Deleted lines 20-23:

'''Monday, 4/19'''\\
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].\\
''Reading:'' Chapter 3 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc16 | tutorial]].
Added lines 13-15:
''Lecture:'' Methods for solving [[Assignment9 | assignment 9]].

'''Monday, 4/19'''\\
Changed line 13 from:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].//
to:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].\\
Changed lines 13-14 from:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].
to:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].//
''Reading:'' Chapter 3 in the biopython [[http://biopython.org/DIST/docs/tutorial/Tutorial.html#htoc16 | tutorial
]].
Changed line 13 from:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions.
to:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions. We will start playing with biopython [[biopython-seq|sequence objects]].
Changed line 13 from:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]].
to:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]]. Also see the biopython [[http://biopython.org/wiki/Download|install]] instructions.
Changed line 13 from:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package.
to:
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package. More info at the [[http://docs.python.org/install/|python documentation]].
Added lines 12-13:
'''Friday, 4/16'''\\
''Lecture:'' [[Installing packages]]. As an example, we will install the [[http://biopython.org|biopython]] package.
Changed line 9 from:
''Lecture:'' New style classes [[new classes | example]]. See also the
to:
''Lecture:'' [[interfaces]] in Python. New style classes [[new classes | example]]. See also the
Changed lines 4-5 from:
''Lecture:'' Inheritance in python [[inheritance| the shapes example]]. New style classes [[new classes | example]]. See also the
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation
]].\\
to:
''Lecture:'' Inheritance in python [[inheritance| the shapes example]].\\
Added lines 7-11:

'''Wednesday, 4/14'''\\
''Lecture:'' New style classes [[new classes | example]]. See also the
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation]].
April 10, 2010, at 09:19 AM MST by 71.196.160.210 -
Changed line 17 from:
''Lecture:'' Operator overloading [[overloading|example]]; another [[cards | example]].\\
to:
''Lecture:'' Operator overloading [[overloading|example]]; the [[cards | cards]] example.\\
April 10, 2010, at 09:18 AM MST by 71.196.160.210 -
Changed line 4 from:
''Lecture:'' Inheritance in python [[inheritance| example]]. New style classes [[new classes | example]]. See also the
to:
''Lecture:'' Inheritance in python [[inheritance| the shapes example]]. New style classes [[new classes | example]]. See also the
Changed line 12 from:
''Lecture:'' Python classes - [[shapes|more examples]]; digression: [[random numbers]]\\
to:
''Lecture:'' Python classes - representing [[shapes|shapes]]; digression: [[random numbers]]\\
April 10, 2010, at 09:15 AM MST by 71.196.160.210 -
Changed lines 3-4 from:
'''Monday, 4/12'''\
to:
'''Monday, 4/12'''\\
April 10, 2010, at 09:15 AM MST by 71.196.160.210 -
Changed line 6 from:
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation]].
to:
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation]].\\
April 10, 2010, at 09:15 AM MST by 71.196.160.210 -
Added lines 1-9:
!!Week 12:

'''Monday, 4/12'''\

''Lecture:'' Inheritance in python [[inheritance| example]]. New style classes [[new classes | example]]. See also the
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation]].
''Lab:'' [[lab11 | lab 11]]\\
''Assignment:'' [[Assignment11 | Assignment 11]]
Changed lines 15-16 from:
''Assignments:'' [[Assignment10 |Assignment 10]]
to:
''Assignment:'' [[Assignment10 |Assignment 10]]
Changed lines 22-23 from:
''Lecture:'' New style classes [[new classes | example]]. See also the
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation]]. Inheritance [[inheritance| example]].
to:
''Lecture:'' Python classes (cont)
April 08, 2010, at 09:39 PM MST by 71.196.160.210 -
Changed lines 10-11 from:
''Reading:'': Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch15.html#operator-overloading|15]].
to:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch15.html#operator-overloading|15]].

'''Friday, 4/9'''\\
''Lecture:'' New style classes [[new classes | example]]. See also the
python [[http://docs.python.org/reference/datamodel.html#new-style-and-classic-classes | documentation]]. Inheritance [[inheritance| example]].
April 07, 2010, at 06:26 PM MST by 71.196.160.210 -
Changed line 25 from:
''Lecture:'' No lecture today due to [[futurevisions.colostate.edu| future visions]].
to:
''Lecture:'' No lecture today due to [[http://futurevisions.colostate.edu| future visions]].
April 07, 2010, at 06:25 PM MST by 71.196.160.210 -
Added lines 23-25:

'''Friday, 4/2'''\\
''Lecture:'' No lecture today due to [[futurevisions.colostate.edu| future visions]].
Added lines 7-11:

'''Wednesday, 4/7'''\\
''Lecture:'' Operator overloading [[overloading|example]]; another [[cards | example]].\\
''Reading:'': Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch15.html#operator-overloading|15]].
Changed line 4 from:
''Lecture:'' Python classes - [[shapes|more examples]].\\
to:
''Lecture:'' Python classes - [[shapes|more examples]]; digression: [[random numbers]]\\
April 04, 2010, at 10:27 PM MST by 71.196.160.210 -
Added lines 1-7:
!!Week 11:

'''Monday, 4/5'''\\
''Lecture:'' Python classes - [[shapes|more examples]].\\
''Lab:'' [[lab10 | lab 10]]\\
''Assignments:'' [[Assignment10 |Assignment 10]]
Changed line 8 from:
'''Wednesday, 3/24'''\\
to:
'''Wednesday, 3/31'''\\
Changed line 6 from:
''Assignments:'' [[Assignment9 |Assignment 9]]\\
to:
''Assignments:'' [[Assignment9 |Assignment 9]]
Changed line 4 from:
''Lecture:'' Introduction to Python classes. code [[classes introduction|examples]].\\
to:
''Lecture:'' Using Python object - continued.\\
Added lines 7-9:

'''Wednesday, 3/24'''\\
''Lecture:'' Introduction to Python classes. code [[classes introduction|examples]].\\
Deleted line 10:
March 28, 2010, at 09:55 PM MST by 71.196.160.210 -
Added lines 1-9:
!!Week 10:

'''Monday, 3/29'''\\
''Lecture:'' Introduction to Python classes. code [[classes introduction|examples]].\\
''Lab:'' [[lab9 | lab 9]]\\
''Assignments:'' [[Assignment9 |Assignment 9]]\\
''Reading:'' [[http://openbookproject.net/thinkcs/python/english2e/ch13.html|chapter 13]] and [[http://openbookproject.net/thinkcs/python/english2e/ch15.html|chapter 15]]
March 25, 2010, at 08:20 AM MST by 71.196.160.210 -
Changed lines 10-13 from:
''Lecture:'' tuples ([[tuples|examples]]); functions revisited: beyond fixed size argument lists. Using [[tuple_var_args|tuples]] and [[dictionary_var_args|dictionaries]].
to:
''Lecture:'' tuples ([[tuples|examples]]); functions revisited: variable length argument lists using [[tuple_var_args|tuples]] and [[dictionary_var_args|dictionaries]].

'''Friday, 3/26'''\\
''Lecture:'' Using python objects - object methods of [[using objects|strings, lists, and
dictionaries]].
March 23, 2010, at 11:11 PM MST by 71.196.160.210 -
Added lines 8-10:

'''Wednesday, 3/24'''\\
''Lecture:'' tuples ([[tuples|examples]]); functions revisited: beyond fixed size argument lists. Using [[tuple_var_args|tuples]] and [[dictionary_var_args|dictionaries]].
March 21, 2010, at 09:39 PM MST by 71.196.160.210 -
Added lines 1-8:
!!Week 9:

'''Monday, 3/22'''\\
''Lecture:'' dictionaries. code [[dictionaries|examples]].\\
''Lab:'' [[lab8 | lab 8]]\\
''Assignments:'' [[Assignment8 |Assignment 8]]\\
''Reading:'' [[http://openbookproject.net/thinkcs/python/english2e/ch12.html|chapter 12]]
Added lines 12-13:
'''Friday, 3/12'''\\
''Lecture:'' midterm
Added lines 8-10:

'''Wednesday, 3/10'''\\
''Lecture:'' recursion - continued. More examples: [[factorial]], [[recursive binary search]].
March 07, 2010, at 06:42 PM MST by 71.196.160.210 -
Changed lines 6-7 from:
''Assignments:'' [[Assignment7 |Assignment 7]]
to:
''Assignments:'' [[Assignment7 |Assignment 7]]\\
''Reading:'' [[http://openbookproject.net/thinkcs/python/english2e/ch11.html#recursion|chapter 11
]]
March 07, 2010, at 06:37 PM MST by 71.196.160.210 -
Added lines 1-8:
!!Week 8:

'''Monday, 3/8'''\\
''Lecture:'' recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. code [[recursion|examples]].\\
''Lab:'' [[lab7 | lab 7]]\\
''Assignments:'' [[Assignment7 |Assignment 7]]
Changed line 12 from:
''Lecture:'' Exceptions [[exceptions | code]].\\
to:
''Lecture:'' Exceptions [[exceptions | code]]; command line arguments [[argv_example| example]].\\
Changed line 9 from:
''Lecture:'' algorithm efficiency (cont).\\
to:
''Lecture:'' algorithm efficiency (cont).
Changed lines 9-12 from:
''Lecture:'' algorithm efficiency (cont); Exceptions [[exceptions | code]].\\
to:
''Lecture:'' algorithm efficiency (cont).\\

'''Friday, 3/5'''\\
''Lecture:''
Exceptions [[exceptions | code]].\\
Changed line 9 from:
''Lecture:'' algorithm efficiency (cont); Exceptions [[exceptions | code]].
to:
''Lecture:'' algorithm efficiency (cont); Exceptions [[exceptions | code]].\\
Added lines 8-10:
'''Wednesday, 3/3'''\\
''Lecture:'' algorithm efficiency (cont); Exceptions [[exceptions | code]].
''Reading:'' Exceptions section in [[http://openbookproject.net/thinkcs/python/english2e/ch11.html#exceptions | chapter 11]].
Changed lines 4-5 from:
''Lecture:'' binary search [[binary search | code]];
measuring the efficiency of algorithms [ [[Path:../../pdfs/04_complexity.pdf\\
to:
''Lecture:'' binary search [[binary search | code]]; measuring the efficiency of algorithms [ [[Path:../../pdfs/04_complexity.pdf | slides]] ]\\
Added lines 1-9:
!!Week 7:

'''Monday, 3/1'''\\
''Lecture:'' binary search [[binary search | code]];
measuring the efficiency of algorithms [ [[Path:../../pdfs/04_complexity.pdf\\
''Lab:'' [[lab6 | lab 6]]\\
''Assignments:'' [[Assignment6 |Assignment 6]]
Changed line 21 from:
''Lecture:'' Sorting algorithms, continued; binary search [[binary search | code]].
to:
''Lecture:'' Sorting algorithms, continued;
Changed lines 9-10 from:
''Lecture:'' Sorting algorithms [ [[Path:../../pdfs/03_sorting.pdf | slides]] ]; here's the [[sorting|code]].\\
to:
''Lecture:'' Sorting algorithms [ [[Path:../../pdfs/03_sorting.pdf | slides]] ]; here's the [[sorting|code]].
Changed line 12 from:
''Lecture:'' Sorting algorithms, continued; binary search [[binary search | code]].\\
to:
''Lecture:'' Sorting algorithms, continued; binary search [[binary search | code]].
Changed lines 9-13 from:
''Lecture:'' Sorting algorithms [ [[Path:../../pdfs/03_sorting.pdf | slides]] ]\\
to:
''Lecture:'' Sorting algorithms [ [[Path:../../pdfs/03_sorting.pdf | slides]] ]; here's the [[sorting|code]].\\

'''Friday, 2/26'''\\
''Lecture:'' Sorting algorithms, continued; binary search [[binary search | code]].\\
Changed line 9 from:
''Lecture:'' Sorting algorithms ([ [[Path:../../pdfs/03_sorting.pdf | slides]] ])\\
to:
''Lecture:'' Sorting algorithms [ [[Path:../../pdfs/03_sorting.pdf | slides]] ]\\
Added lines 8-9:
'''Wednesday, 2/24'''\\
''Lecture:'' Sorting algorithms ([ [[Path:../../pdfs/03_sorting.pdf | slides]] ])\\
Changed line 4 from:
''Lecture:'' Strings (continued), string formatting ([[string formatting | examples]]).\\
to:
''Lecture:'' Strings and lists ([[strings and lists | code]]), iterators ([[iterators | code]]), files ([[files | code]]).\\
Changed lines 9-11 from:
!!Week 6:
to:
!!Week 5:
Changed line 12 from:
''Lecture:'' Strings and lists ([[strings and lists | code]]), iterators ([[iterators | code]]), files ([[files | code]]).\\
to:
''Lecture:'' Strings (continued), string formatting ([[string formatting | examples]]).\\
Changed lines 1-3 from:
!!Week 5:

'''Monday, 2/15'''\\
to:
!!Week 6:

'''Monday, 2/22'''\\
Added lines 5-13:
''Lab:'' [[lab5 | lab 5]]\\
''Assignments:'' [[Assignment5 |Assignment 5]]



!!Week 6:

'''Monday, 2/15'''\\
''Lecture:'' Strings and lists ([[strings and lists | code]]), iterators ([[iterators | code]]), files ([[files | code]]).\\
Changed line 23 from:
''Lecture:'' Lists are mutable ([[list mutability | code]]), lists as function parameters ([[lists as parameters | code]]), nested lists ([[nested lists | code]]), strings and lists ([[strings and lists | code]]).\\
to:
''Lecture:'' Lists are mutable ([[list mutability | code]]), lists as function parameters ([[lists as parameters | code]]), nested lists ([[nested lists | code]]).\\
Changed line 14 from:
''Lecture:'' Lists are mutable ([[list mutability | code]]), lists as function parameters ([[lists as parameters | code]]), nested lists [[nested lists | code]], strings and lists ( [[strings and lists | code]] ).\\
to:
''Lecture:'' Lists are mutable ([[list mutability | code]]), lists as function parameters ([[lists as parameters | code]]), nested lists ([[nested lists | code]]), strings and lists ([[strings and lists | code]]).\\
Changed line 14 from:
''Lecture:'' Lists are mutable [[list mutability | code]], lists as function parameters [[lists as parameters | code]], nested lists [[nested lists | code]], strings and lists [[strings and lists | code]].\\
to:
''Lecture:'' Lists are mutable ([[list mutability | code]]), lists as function parameters ([[lists as parameters | code]]), nested lists [[nested lists | code]], strings and lists ( [[strings and lists | code]] ).\\
Changed line 14 from:
''Lecture:'' Lists are mutable [[list mutability | code]], lists as function parameters [[lists as parameters | code]], nested lists [[nested lists | code]].\\
to:
''Lecture:'' Lists are mutable [[list mutability | code]], lists as function parameters [[lists as parameters | code]], nested lists [[nested lists | code]], strings and lists [[strings and lists | code]].\\
Changed line 11 from:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]].\\
to:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]].
Added lines 12-15:

'''Friday, 2/19'''\\
''Lecture:'' Lists are mutable [[list mutability | code]], lists as function parameters [[lists as parameters | code]], nested lists [[nested lists | code]].\\
Changed line 10 from:
''Lecture:'' Lists ([[examples]])\\
to:
''Lecture:'' Lists ([[lists]])\\
Changed line 10 from:
''Lecture:'' Lists ([[examples|lists]])\\
to:
''Lecture:'' Lists ([[examples]])\\
Changed lines 4-5 from:
''Lecture:'' String formatting ([[string formatting | examples]]). Lists ([[examples|lists]])\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]]
.\\
to:
''Lecture:'' Strings (continued), string formatting ([[string formatting | examples]]).\\
Added lines 8-11:
'''Wednesday, 2/17'''\\

''Lecture:'' Lists ([[examples|lists]])\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]].\\
Changed line 7 from:
''Assignments:'' [[Assignment3 |Assignment 3]]
to:
''Assignments:'' [[Assignment4 |Assignment 4]]
Added lines 1-9:
!!Week 5:

'''Monday, 2/15'''\\
''Lecture:'' String formatting ([[string formatting | examples]]). Lists ([[examples|lists]])\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]].\\
''Lab:'' [[lab4 | lab 4]]\\
''Assignments:'' [[Assignment3 |Assignment 3]]
Changed lines 22-23 from:
''Lecture:'' String formatting ([[string formatting | examples]]). Lists ([[examples|lists]])\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]]
.\\
to:
''Lecture:'' Strings (continued).\\
Changed line 10 from:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch07.html | 7]].\\
to:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch07.html | 7]].
Added lines 11-15:

'''Friday, 2/12'''\\
''Lecture:'' String formatting ([[string formatting | examples]]). Lists ([[examples|lists]])\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch09.html | 9]].\\
Changed line 9 from:
''Lecture:'' For loops (cont): [[nestedLoops | nested loops]]. Strings ([[string_examples| examples]].\\
to:
''Lecture:'' For loops (cont): [[nestedLoops | nested loops]]. Strings ([[string_examples| examples]]).\\
Changed lines 9-10 from:
''Lecture:'' For loops (cont): [[nestedLoops | nested loops]].\\
to:
''Lecture:'' For loops (cont): [[nestedLoops | nested loops]]. Strings ([[string_examples| examples]].\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch07.html | 7]].\\
Changed line 4 from:
''Lecture:'' While loops (cont): printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]].\\
to:
''Lecture:'' While loops (cont): printing [[tables]]. Iteration using [[for loops]].\\
Added lines 7-10:

'''Wednesday, 2/10'''\\
''Lecture:'' For loops (cont): [[nestedLoops | nested loops]].\\
Changed lines 4-5 from:
''Lecture:'' While loops (cont): printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]]\\.
to:
''Lecture:'' While loops (cont): printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]].\\
''Lab:'' [[lab3 | Lab 3]]\\
''Assignments:'' [[Assignment3 |Assignment 3]]
Changed line 24 from:
''Lecture:'' While loops: [[inputValidation | input validation]]\\.
to:
''Lecture:'' While loops: [[inputValidation | input validation]].\\
Changed line 4 from:
'Lecture:'' While loops (cont): printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]]\\.
to:
''Lecture:'' While loops (cont): printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]]\\.
Added lines 1-5:
!!Week 4:

'''Monday, 2/8'''\\
'Lecture:'' While loops (cont): printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]]\\.
Changed line 22 from:
''Lecture:'' While loops: [[inputValidation | input validation]], printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]]\\.
to:
''Lecture:'' While loops: [[inputValidation | input validation]]\\.
Added line 14:
Added lines 15-16:
'''Friday, 2/5'''\\
''Lecture:'' While loops: [[inputValidation | input validation]], printing [[tables]], [[nestedLoops | nested loops]]. Iteration using [[for loops]]\\.
Changed line 11 from:
Iteration - the while statement. Here's an [[while example|example]].
to:
Iteration - the while statement. Here's an [[while example|example]].\\
Changed lines 10-11 from:
''Lecture:'' Functions that return a value. Examples: [[area]], [[divisibility]], [[absolute value]].
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch05.html | 5]].\\
to:
''Lecture:'' Functions that return a value. Examples: [[area]], [[divisibility]], [[absolute value]].\\
Iteration - the while statement
. Here's an [[while example|example]].
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch05.html | 5]],
chapter [[http://openbookproject.net/thinkcs/python/english2e/ch06.html | 6]]
\\
Changed line 9 from:
'''Monday, 2/3'''\\
to:
'''Wednesday, 2/3'''\\
Changed lines 11-12 from:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch04.html | 5]].\\
to:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch05.html | 5]].\\
Added lines 9-11:
'''Monday, 2/3'''\\
''Lecture:'' Functions that return a value. Examples: [[area]], [[divisibility]], [[absolute value]].
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch04.html | 5]].\\
Added lines 6-8:
''Lab:'' [[lab2 | Lab 2]]\\
''Assignments:'' [[Assignment2 |Assignment 2]]
Added lines 1-6:
!!Week 3:

'''Monday, 2/1'''\\
''Lecture:'' Conditionals - the if statement [[boolean variables]], [[conditionals]], [[sort names]], [[letter grade]] calculator, a better version of [[letter grade2 | letter grade]].\\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch04.html | 4]].\\
Changed line 20 from:
''Lecture:'' Functions - continued [[local variables]], conditionals - the if statement [[boolean variables]], [[conditionals]], [[sort names]], [[letter grade]] calculator, a better version of [[letter grade2 | letter grade]].\\
to:
''Lecture:'' Functions - continued [[local variables]], conditionals - the if statement [[boolean variables]].\\
Added line 23:
Added line 23:
Added line 12:
Changed line 14 from:
''Lecture:'' Functions - continued [[local variables]], conditionals - the if statement [[boolean variables]], [[conditionals]], [[sort names]], [[letter grade]] calculator, a better version of [[letter grade2 | letter grade]].
to:
''Lecture:'' Functions - continued [[local variables]], conditionals - the if statement [[boolean variables]], [[conditionals]], [[sort names]], [[letter grade]] calculator, a better version of [[letter grade2 | letter grade]].\\
Added line 16:
Changed lines 14-15 from:
to:
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch04.html | 4]].\\
Changed lines 12-14 from:
to:
'''Friday, 1/29'''\\
''Lecture:'' Functions - continued [[local variables]], conditionals - the if statement [[boolean variables]], [[conditionals]], [[sort names]], [[letter grade]] calculator, a better version of [[letter grade2 | letter grade]].
Changed line 9 from:
''Lecture:'' Functions [ [[Path:../../pdfs/01_intro.pdf | slides]] ]. [[draw_rectangle]], [[celsius2fahrenheit]], [[functions]].
to:
''Lecture:'' Functions [ [[Path:../../pdfs/02_functions.pdf | slides]] ]. [[draw_rectangle]], [[celsius2fahrenheit]], [[functions]].
Added lines 8-12:
'''Wednesday, 1/27'''\\
''Lecture:'' Functions [ [[Path:../../pdfs/01_intro.pdf | slides]] ]. [[draw_rectangle]], [[celsius2fahrenheit]], [[functions]].
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch03.html | 3]].\\
Changed line 15 from:
'''Wed, 1/20'''\\
to:
'''Wednesday, 1/20'''\\
Changed line 18 from:
'''Fri, 1/22'''\\
to:
'''Friday, 1/22'''\\
Changed line 8 from:
!!!Week 1:
to:
!!Week 1:
Added lines 1-7:
!!Week 2:

'''Monday, 1/25'''\\
''Lecture:'' Python [[expressions]], and [[input]]. Putting it together: [[celsius2fahreheit | Celsius to fahreheit converter]] \\
''Lab:'' [[lab1]]\\
''Assignments:'' [[Assignment1]]
Changed lines 17-22 from:
!!!Week 2:

''Lecture:'' Python [[expressions]], and [[input]]. \\
''Lab:'' [[lab1]]\\
''Assignments:'' [[Assignment1]]
to:
!
Changed lines 13-15 from:
''Lab:'' [[lab1]]
to:
''Lab:'' [[lab1]]\\
''Assignments:'' [[Assignment1]]
Changed lines 12-13 from:
''Lecture:'' Python [[expressions]], and [[input]]. \\
to:
''Lecture:'' Python [[expressions]], and [[input]]. \\
''Lab:'' [[lab1]]
Changed line 12 from:
''Lecture:'' Python[[expressions]], and [[input]]. \\
to:
''Lecture:'' Python [[expressions]], and [[input]]. \\
Changed line 7 from:
''Lecture:'' Our [[first program]], [[programming errors]], Python [[types]], [[variables]], [[expressions]], and [[input]]. \\
to:
''Lecture:'' Our [[first program]], [[programming errors]], Python [[types]], [[variables]]\\
Added lines 9-12:

!!!Week 2:

''Lecture:'' Python[[expressions]], and [[input]]. \\
Changed line 7 from:
''Lecture:'' Our [[FirstProgram]], [[programming errors]], Python [[types]], [[variables]], [[expressions]], and [[input]]. \\
to:
''Lecture:'' Our [[first program]], [[programming errors]], Python [[types]], [[variables]], [[expressions]], and [[input]]. \\
Changed line 4 from:
''Lectures:'' Course introduction; [[http://www.sciencemag.org/cgi/content/short/325/5940/541 | why programming?]] [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
to:
''Lecture:'' Course introduction; [[http://www.sciencemag.org/cgi/content/short/325/5940/541 | why programming?]] [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
Changed lines 6-8 from:
to:
'''Fri, 1/22'''\\
''Lecture:'' Our [[FirstProgram]], [[programming errors]], Python [[types]], [[variables]], [[expressions]], and [[input]]. \\
''Reading:'' Chapter [[http://openbookproject.net/thinkcs/python/english2e/ch02.html | 2]].\\
Changed lines 1-3 from:
!!Week 1:

!!!Wed, 1/20
to:
!!!Week 1:

'''Wed, 1/20'''\\
Changed lines 1-2 from:
!!!Week 1: 1/20
to:
!!Week 1:

!!!Wed,
1/20
Changed line 6 from:
''Assignments:'' Coming soon
to:
Changed line 3 from:
''Lectures:'' Course introduction; [[http://www.sciencemag.org/cgi/content/short/325/5940/541 | why programming?]]\\
to:
''Lectures:'' Course introduction; [[http://www.sciencemag.org/cgi/content/short/325/5940/541 | why programming?]] [ [[Path:../../pdfs/01_intro.pdf | slides]] ] \\
Changed lines 3-4 from:
''Lectures:'' Course introduction; \\
''Reading
:'' \\
to:
''Lectures:'' Course introduction; [[http://www.sciencemag.org/cgi/content/short/325/5940/541 | why programming?]]\\
''Reading:'' Chapter 1 in [[http://openbookproject.net/thinkcs/python/english2e/ch01.html | How to think like a computer scientist]].
\\
Changed lines 1-92 from:
!!!Week 1: 8/25

''Lectures:'' Course introduction; cs160 recap
[ [[Path:../../pdfs/01_intro.pdf | slides]] ] (updated)\\
''Reading:'' 160 material: chapters 1-4, 7 in the Java book.\\
''Recitation:'' [[ recit1 | cs160 recap]]\\
''Assignments:'' First programming assignment is [[assignments | available]]

!!!Week 2: 9/1

''Lectures:'' Java classes, objects, and object oriented programming
[ [[Path:../../pdfs/02_classes.pdf | slides]] ]. Here's the code for the [[Die]] class. Quiz on Thu.\\
''Reading:'' Chapter 5 in the Java book.\\
''Recitation:'' [[ recit2 | Getting familiar with Classes]]\\
''Assignments:'' Programming assignment is [[assignments | available]]

!!!Week 3: 9/8

''Lectures:'' More on Java classes [ [[Path:../../pdfs/03_classes_cont.pdf | slides]] ] (updated thu). The code for the [[Account]] class. Quiz on Thu.\\
''Reading:'' Chapters 5-6 in Savitch (5 in Lewis).\\
''Recitation:'' [[ recit3 | More on Classes]]\\

!!!Week 4: 9/15

''Lectures:'' Assertions, pre/post conditions [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Javadoc commenting of code. Here's an [[AccountCommented | example]]. ArrayList [ [[Path:../../pdfs/04_arrayList.pdf | slides]] ]. Here's the [[ArrayListExample| example]] we worked on in class . Quiz on Thu.\\
''Reading:'' Assertions - chapter 4.2 in Savitch. ArrayList - chapter 12.1 in Savitch; \\
''Recitation:'' [[ recit4 | A Break from Classes]]\\

!!!Week 5: 9/22

''Lectures:'' Recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. Quiz on Thu. More recursion [ [[Path:../../pdfs/05_recursion_cont.pdf | slides]] ]. The [[maze]] example.\\
''Reading:'' Chapter 11 in Savitch, or Chapter 12 in Lewis, or Chapter 3 in Walls and Mirrors.\\
''Recitation:'' [[ recit5 | Recursion]]\\

!!!Week 6: 9/29

''Lectures:'' Counting [ [[Path:../../pdfs/06_counting.pdf | slides]] ]. Midterm on Thu.\\
''Reading:'' Chapter 5 in Rosen.\\
''Recitation:'' [[ recit6 | Recursion]]\\

!!!Week 7: 10/6

''Lectures:'' Permutations, r-permutation, combinations, and the traveling salesman problem [ [[Path:../../pdfs/07_permutations.pdf | slides]] ] (updated on thursday). Quiz on Thu.\\
''Reading:'' Chapter 5 in Rosen.\\
''Recitation:'' [[ recit7 | Enumeration and Counting]]\\

!!!Week 8: 10/13

''Lectures:'' Induction [ [[Path:../../pdfs/08_induction.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Chapter 4.1,4.2 in Rosen.\\
''Assignments:'' A written assignment on induction is [[assignments | available]]

!!!Week 9: 10/20

''Lectures:'' Inheritance [ [[Path:../../pdfs/09_inheritance.pdf | slides]] ]. Inheritance and polymorphism [ [[Path:../../pdfs/09_inheritance2.pdf | slides]] ] Quiz on Thu.\\
''Reading:'' Chapter 8 in either of the Java books.\\
''Recitation:'' [[ recit9 | Inheritance]]\\

!!!Week 10: 10/27

''Lectures:'' Interfaces [ [[Path:../../pdfs/10_interfaces.pdf | slides]] ]. (updated after thursday's class) [ [[Path:../../code/staffExample.tar | Code]] ] for the StaffMember/Employee etc. example. Quiz on Thu.\\
''Reading:'' Chapter 8 in Savitch, chapter 9 in Lewis.\\
''Recitation:'' [[recit10 | Interfaces]]\\

!!!Week 11: 11/3

''Lectures:'' Midterm on Tue. Static again [ [[Path:../../pdfs/11_static.pdf | slides]] ]. Linked lists [ [[Path:../../pdfs/11_linked_lists.pdf | slides]] ]\\
''Reading:'' Chapter 5 in Walls and Mirrors, 12.1 in Savitch, 14.4 in Lewis.\\
''Recitation:'' Programming quiz\\

!!!Week 12: 11/10

''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ] (updated on wed). Linked list [[LinkedList | code]] and doubly linked list [[DoublyLinkedList | code]]. \\
''Reading:'' Chapter 5 in Walls and Mirrors, 12.1 in Savitch, 14.4 in Lewis.\\
''Recitation:'' [[recit12 | Linked Lists]]\\

!!!Week 13: 11/17

''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] (updated on thu) Here's a nice [[ http://math.hws.edu/TMCM/java/xSortLab/ | java applet]] that illustrates the sorting algorithms we looked at. Obama being asked about [[http://www.youtube.com/watch?v=k4RRi_ntQc8|sorting]]\\
''Reading:'' Chapter 13 in Lewis, Chapter 10 in Walls and Mirrors\\
''Recitation:'' [[recit13 | Sorting]]\\


!!!Week 14: 12/1

''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_junit.pdf | slides]] ]. Graphics, GUI and Applets in Java [ [[Path:../../pdfs/16_graphics_gui.pdf | slides]] ] and [ [[Path:../../code/graphics_gui.tgz | code]] ]\\
''Reading:'' Packages: Chapter 11 in Lewis, 6.7 in Savitch. Lewis covers version 3 of JUnit.\\
''Recitation:'' [[recit14 | JUnit]]\\

!!!Week 15: 12/8
''Lectures:'' Java Graphics, GUI and Applets - continued (tuesday). Review (thursday).\\
''Recitation:'' Programming final.
to:
!!!Week 1: 1/20

''Lectures:'' Course introduction; \\
''Reading:'' \\
''Assignments:'' Coming soon
Added lines 89-92:

!!!Week 15: 12/8
''Lectures:'' Java Graphics, GUI and Applets - continued (tuesday). Review (thursday).\\
''Recitation:'' Programming final.
Changed line 86 from:
''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_junit.pdf | slides]] ]. Graphics, GUI and Applets in Java [ [[Path:../../pdfs/16_graphics_gui.pdf | slides]] ]\\
to:
''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_junit.pdf | slides]] ]. Graphics, GUI and Applets in Java [ [[Path:../../pdfs/16_graphics_gui.pdf | slides]] ] and [ [[Path:../../code/graphics_gui.tgz | code]] ]\\
Changed line 86 from:
''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_junit.pdf | slides]] ] \\
to:
''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_junit.pdf | slides]] ]. Graphics, GUI and Applets in Java [ [[Path:../../pdfs/16_graphics_gui.pdf | slides]] ]\\
Changed line 88 from:
''Recitation:'' \\
to:
''Recitation:'' [[recit14 | JUnit]]\\
Changed line 86 from:
''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_testing.pdf | slides]] ] \\
to:
''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_junit.pdf | slides]] ] \\
Changed lines 81-88 from:
''Recitation:'' [[recit13 | Sorting]]\\
to:
''Recitation:'' [[recit13 | Sorting]]\\


!!!Week 14: 12/1

''Lectures:'' Java packages [ [[Path:../../pdfs/14_packages.pdf | slides]] ]. JUnit and testing [ [[Path:../../pdfs/15_testing.pdf | slides]] ] \\
''Reading:'' Packages: Chapter 11 in Lewis, 6.7 in Savitch. Lewis covers version 3 of JUnit.\\
''Recitation:''
\\
Changed line 79 from:
''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] (updated on thu) Here's a nice [[ http://math.hws.edu/TMCM/java/xSortLab/ | java applet]] that illustrates the sorting algorithms we looked at\\
to:
''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] (updated on thu) Here's a nice [[ http://math.hws.edu/TMCM/java/xSortLab/ | java applet]] that illustrates the sorting algorithms we looked at. Obama being asked about [[http://www.youtube.com/watch?v=k4RRi_ntQc8|sorting]]\\
Changed line 79 from:
''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] (updated on thu) \\
to:
''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] (updated on thu) Here's a nice [[ http://math.hws.edu/TMCM/java/xSortLab/ | java applet]] that illustrates the sorting algorithms we looked at\\
Changed line 79 from:
''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] \\
to:
''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] (updated on thu) \\
Changed line 81 from:
''Recitation:'' [[recit13 | Sorting]]\\
to:
''Recitation:'' [[recit13 | Sorting]]\\
Changed line 81 from:
''Recitation:'' \\
to:
''Recitation:'' [[recit13 | Sorting]]\\
Added lines 76-81:

!!!Week 13: 11/17

''Lectures:'' Sorting [ [[Path:../../pdfs/13_sorting.pdf | slides]] ] \\
''Reading:'' Chapter 13 in Lewis, Chapter 10 in Walls and Mirrors\\
''Recitation:'' \\
Changed line 73 from:
''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ] (updated on wed). Linked list [[LinkedList | code]] \\
to:
''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ] (updated on wed). Linked list [[LinkedList | code]] and doubly linked list [[DoublyLinkedList | code]]. \\
Changed line 73 from:
''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ] (updated on wed)\\
to:
''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ] (updated on wed). Linked list [[LinkedList | code]] \\
Changed line 73 from:
''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ]\\
to:
''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ] (updated on wed)\\
Changed line 75 from:
to:
''Recitation:'' [[recit12 | Linked Lists]]\\
Added lines 70-75:

!!!Week 12: 11/10

''Lectures:'' Linked lists [ [[Path:../../pdfs/12_linked_lists2.pdf | slides]] ]\\
''Reading:'' Chapter 5 in Walls and Mirrors, 12.1 in Savitch, 14.4 in Lewis.\\
Changed lines 63-69 from:
''Recitation:'' [[recit10 | Interfaces]]\\
to:
''Recitation:'' [[recit10 | Interfaces]]\\

!!!Week 11: 11/3

''Lectures:'' Midterm on Tue. Static again [ [[Path:../../pdfs/11_static.pdf | slides]] ]. Linked lists [ [[Path:../../pdfs/11_linked_lists.pdf | slides]] ]\\
''Reading:'' Chapter 5 in Walls and Mirrors, 12.1 in Savitch, 14.4 in Lewis.\\
''Recitation:'' Programming quiz
\\
Changed line 61 from:
''Lectures:'' Interfaces [ [[Path:../../pdfs/10_interfaces.pdf | slides]] ]. [ [[Path:../../code/staffExample.tar | Code]] ] for the StaffMember/Employee etc. example. Quiz on Thu.\\
to:
''Lectures:'' Interfaces [ [[Path:../../pdfs/10_interfaces.pdf | slides]] ]. (updated after thursday's class) [ [[Path:../../code/staffExample.tar | Code]] ] for the StaffMember/Employee etc. example. Quiz on Thu.\\
Changed line 63 from:
to:
''Recitation:'' [[recit10 | Interfaces]]\\
Changed line 61 from:
''Lectures:'' Interfaces [ [[Path:../../pdfs/10_interfaces.pdf | slides]] ]. Quiz on Thu.\\
to:
''Lectures:'' Interfaces [ [[Path:../../pdfs/10_interfaces.pdf | slides]] ]. [ [[Path:../../code/staffExample.tar | Code]] ] for the StaffMember/Employee etc. example. Quiz on Thu.\\
Changed line 59 from:
!!!Week 9: 10/27
to:
!!!Week 10: 10/27
Added lines 58-63:

!!!Week 9: 10/27

''Lectures:'' Interfaces [ [[Path:../../pdfs/10_interfaces.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Chapter 8 in Savitch, chapter 9 in Lewis.\\
Changed line 55 from:
''Lectures:'' Inheritance [ [[Path:../../pdfs/09_inheritance.pdf | slides]] ]. Quiz on Thu.\\
to:
''Lectures:'' Inheritance [ [[Path:../../pdfs/09_inheritance.pdf | slides]] ]. Inheritance and polymorphism [ [[Path:../../pdfs/09_inheritance2.pdf | slides]] ] Quiz on Thu.\\
Changed line 57 from:
to:
''Recitation:'' [[ recit9 | Inheritance]]\\
Added lines 52-57:

!!!Week 9: 10/20

''Lectures:'' Inheritance [ [[Path:../../pdfs/09_inheritance.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Chapter 8 in either of the Java books.\\
Added line 51:
''Assignments:'' A written assignment on induction is [[assignments | available]]
Changed line 32 from:
''Reading:'' Chapter 11 in Savitch, or Chapter 12 in Lewis, or Chapter 3 in Walls and Mirrors.
to:
''Reading:'' Chapter 11 in Savitch, or Chapter 12 in Lewis, or Chapter 3 in Walls and Mirrors.\\
Changed line 38 from:
''Reading:'' Chapter 5 in Rosen.
to:
''Reading:'' Chapter 5 in Rosen.\\
Changed line 44 from:
''Reading:'' Chapter 5 in Rosen.
to:
''Reading:'' Chapter 5 in Rosen.\\
Added lines 47-50:
!!!Week 8: 10/13

''Lectures:'' Induction [ [[Path:../../pdfs/08_induction.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Chapter 4.1,4.2 in Rosen.\\
Changed line 43 from:
''Lectures:'' Permutations, r-permutation, combinations, and the traveling salesman problem [ [[Path:../../pdfs/07_permutations.pdf | slides]] ]. Quiz on Thu.\\
to:
''Lectures:'' Permutations, r-permutation, combinations, and the traveling salesman problem [ [[Path:../../pdfs/07_permutations.pdf | slides]] ] (updated on thursday). Quiz on Thu.\\
Added line 45:
''Recitation:'' [[ recit7 | Enumeration and Counting]]\\
Changed line 43 from:
''Lectures:'' Permutations, r-permutation, combinations, and the traveling salesman problem [ [[Path:../../pdfs/07_permutations.pdf | slides]] ]. Midterm on Thu.\\
to:
''Lectures:'' Permutations, r-permutation, combinations, and the traveling salesman problem [ [[Path:../../pdfs/07_permutations.pdf | slides]] ]. Quiz on Thu.\\
Added lines 40-44:

!!!Week 7: 10/6

''Lectures:'' Permutations, r-permutation, combinations, and the traveling salesman problem [ [[Path:../../pdfs/07_permutations.pdf | slides]] ]. Midterm on Thu.\\
''Reading:'' Chapter 5 in Rosen.
Added line 39:
''Recitation:'' [[ recit6 | Recursion]]\\
Added lines 34-38:

!!!Week 6: 9/29

''Lectures:'' Counting [ [[Path:../../pdfs/06_counting.pdf | slides]] ]. Midterm on Thu.\\
''Reading:'' Chapter 5 in Rosen.
Changed line 31 from:
''Lectures:'' Recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. Quiz on Thu. More recursion [ [[Path:../../pdfs/05_recursion_cont.pdf | slides]] ]\\
to:
''Lectures:'' Recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. Quiz on Thu. More recursion [ [[Path:../../pdfs/05_recursion_cont.pdf | slides]] ]. The [[maze]] example.\\
Changed line 31 from:
''Lectures:'' Recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. Quiz on Thu.\\
to:
''Lectures:'' Recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. Quiz on Thu. More recursion [ [[Path:../../pdfs/05_recursion_cont.pdf | slides]] ]\\
Changed line 33 from:
to:
''Recitation:'' [[ recit5 | Recursion]]\\
Changed lines 29-33 from:
to:
!!!Week 5: 9/22

''Lectures:'' Recursion [ [[Path:../../pdfs/05_recursion.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Chapter 11 in Savitch, or Chapter 12 in Lewis, or Chapter 3 in Walls and Mirrors.
Changed line 25 from:
''Lectures:'' Assertions, pre/post conditions [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Javadoc commenting of code. Here's an [[AccountCommented | example]]. ArrayList [ [[Path:../../pdfs/04_arrayList.pdf | slides]] ]. Quiz on Thu.\\
to:
''Lectures:'' Assertions, pre/post conditions [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Javadoc commenting of code. Here's an [[AccountCommented | example]]. ArrayList [ [[Path:../../pdfs/04_arrayList.pdf | slides]] ]. Here's the [[ArrayListExample| example]] we worked on in class . Quiz on Thu.\\
Changed lines 25-26 from:
''Lectures:'' Assertions, pre/post conditions [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Javadoc commenting of code. Here's an [[AccountCommented | example]]. Quiz on Thu.\\
''Reading:'' Assertions - chapter 4
.2 in Savitch.\\
to:
''Lectures:'' Assertions, pre/post conditions [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Javadoc commenting of code. Here's an [[AccountCommented | example]]. ArrayList [ [[Path:../../pdfs/04_arrayList.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Assertions - chapter 4.2 in Savitch. ArrayList - chapter 12.1 in Savitch;
\\
Changed line 27 from:
''Recitation:''
to:
''Recitation:'' [[ recit4 | A Break from Classes]]\\
Changed line 25 from:
''Lectures:'' More on Java classes [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Quiz on Thu.\\
to:
''Lectures:'' Assertions, pre/post conditions [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Javadoc commenting of code. Here's an [[AccountCommented | example]]. Quiz on Thu.\\
Changed lines 17-18 from:
!!!Week 4: 9/8
to:
!!!Week 3: 9/8
Changed line 23 from:
!!!Week 3: 9/15
to:
!!!Week 4: 9/15
Changed line 17 from:
!!!Week 3: 9/8
to:
!!!Week 4: 9/8
Added lines 22-30:

!!!Week 3: 9/15

''Lectures:'' More on Java classes [ [[Path:../../pdfs/04_assertions.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Assertions - chapter 4.2 in Savitch.\\
''Recitation:''

Changed line 19 from:
''Lectures:'' More on Java classes [ [[Path:../../pdfs/03_classes_cont.pdf | slides]] ]. The code for the [[Account]] class. Quiz on Thu.\\
to:
''Lectures:'' More on Java classes [ [[Path:../../pdfs/03_classes_cont.pdf | slides]] ] (updated thu). The code for the [[Account]] class. Quiz on Thu.\\
Changed line 21 from:
''Recitation:'' \\
to:
''Recitation:'' [[ recit3 | More on Classes]]\\
Changed line 19 from:
''Lectures:'' More on Java classes [ [[Path:../../pdfs/03_classes_cont.pdf | slides]] ]. Quiz on Thu.\\
to:
''Lectures:'' More on Java classes [ [[Path:../../pdfs/03_classes_cont.pdf | slides]] ]. The code for the [[Account]] class. Quiz on Thu.\\
Changed lines 14-21 from:
''Recitation:'' [[ recit2 | Getting familiar with Classes]]\\
to:
''Recitation:'' [[ recit2 | Getting familiar with Classes]]\\
''Assignments:'' Programming assignment is [[assignments | available]]

!!!Week 3: 9/8

''Lectures:'' More on Java classes [ [[Path:../../pdfs/03_classes_cont.pdf | slides]] ]. Quiz on Thu.\\
''Reading:'' Chapters 5-6 in Savitch (5 in Lewis).\\
''Recitation:''
\\
Changed line 12 from:
[ [[Path:../../pdfs/02_classes.pdf | slides]] ]. Here's the code for the [[Die]] class. \\
to:
[ [[Path:../../pdfs/02_classes.pdf | slides]] ]. Here's the code for the [[Die]] class. Quiz on Thu.\\
Added line 14:
''Recitation:'' [[ recit2 | Getting familiar with Classes]]\\
Changed line 12 from:
[ [[Path:../../pdfs/02_classes.pdf | slides]] ] \\
to:
[ [[Path:../../pdfs/02_classes.pdf | slides]] ]. Here's the code for the [[Die]] class. \\
Changed line 12 from:
[ [[Path:../../pdfs/02_classes.pdf | slides]] ] (updated)\\
to:
[ [[Path:../../pdfs/02_classes.pdf | slides]] ] \\
Changed line 9 from:
!!!Week 1: 8/25
to:
!!!Week 2: 9/1
Added lines 8-13:

!!!Week 1: 8/25

''Lectures:'' Java classes, objects, and object oriented programming
[ [[Path:../../pdfs/02_classes.pdf | slides]] ] (updated)\\
''Reading:'' Chapter 5 in the Java book.\\
Changed line 4 from:
[ [[Path:../../pdfs/01_intro.pdf | slides]] ]\\
to:
[ [[Path:../../pdfs/01_intro.pdf | slides]] ] (updated)\\
Changed lines 4-8 from:
>>comment<<
[ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
>><<
''Reading:'' Chapters 1-4, 7 in the Java book.\\
''Recitation:'' \\
to:
[ [[Path:../../pdfs/01_intro.pdf | slides]] ]\\
''Reading:'' 160 material: chapters 1-4, 7 in the Java book.\\
''Recitation:'' [[ recit1 | cs160 recap]]\\
Deleted line 8:
>>comment<<
Deleted line 9:
>><<
Changed lines 3-4 from:
''Lectures:'' Course introduction; cs160 recap [ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
''Reading:'' Chapter 1 in Walls and Mirrors.\\
to:
''Lectures:'' Course introduction; cs160 recap
>>comment<<
[ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
>><<
''Reading:'' Chapters 1-4, 7 in the Java book.\\
Added line 9:
>>comment<<
Added line 11:
>><<
Changed line 4 from:
''Reading:'' Chapter 4 in Walls and Mirrors.\\
to:
''Reading:'' Chapter 1 in Walls and Mirrors.\\
Changed lines 1-3 from:
!!!Week 1: 1/21 - 1/23

''Lectures:'' Course
introduction; abstract data types (ADTs) [ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
to:
!!!Week 1: 8/25

''Lectures:''
Course introduction; cs160 recap [ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
Changed line 5 from:
''Recitation:'' No recitations this week\\
to:
''Recitation:'' \\
Deleted lines 6-94:

!!!Week 2: 1/26 - 1/30

''Lectures:'' Measuring the efficiency of algorithms [ [[Path:../../pdfs/complexity.pdf | slides]] ]\\
''Reading:'' Sections 3.2,3.3 in Rosen, Section 10.1 in Walls and Mirrors.\\
''Recitation:'' Using checkin, review of linked lists, help on programming assignment\\

!!!Week 3: 2/2 - 2/6

''Lectures:'' Stacks and Queues [ [[Path:../../pdfs/stacksAndQueues.pdf | slides]] ]\\
''Reading:'' chapters 7 and 8 in Walls and Mirrors\\
''Recitation:'' Review of big-O analysis, generics, stacks\\

''Assignments:'' Second programming assignment is [[assignments | available]]

!!!Week 4: 2/9 - 2/13

''Lectures:'' Queues (cont). Advanced sorting algorithms using divide and conquer strategies; evaluating complexity of recursive algorithms [ [[Path:../../pdfs/divide-conquer.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors 10.2, Rosen 7.1, 7.3\\
''Recitation:'' Programming a queue; work on programming assignment\\

!!!Week 5: 2/16 - 2/20

''Lectures:'' Sorting algorithms using divide and conquer strategies (cont)\\
''Reading:'' Walls and Mirrors 10.2, Rosen 7.1, 7.3\\
''Recitation:'' recursion\\
''Assignments:'' Second written assignment is [[assignments | available]]

!!!Week 6: 2/23 - 2/27

''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees\\ [ [[Path:../../pdfs/trees.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 11\\
''Recitation:'' Review for midterm, recursion

!!!Week 7: 3/2 - 3/6

''Lectures:'' Trees, binary search trees (cont)\\
''Reading:'' Walls and Mirrors ch. 11\\
''Recitation:'' Iterators, recursion

!!!Week 8: 3/9 - 3/13

''Lectures:'' Priority queues and heaps [ [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 12.2\\
''Recitation:'' More iterators

!!!Week 9: 3/23 - 3/27

''Lectures:'' Monday: grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] Wednesday: Working in teams - a talk by Debbie Bartlett. Friday: Balanced search trees [ [[Path:../../pdfs/balancedTrees.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 6.2, ch. 12,13\\
''Recitation:'' implementing a heap


!!!Week 10: 3/30 - 4/3

''Lectures:'' Balanced search trees (cont). Friday: graphs [ [[Path:../../pdfs/graphs1.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 13; ch. 14.1-14.2\\
''Recitation:'' programming quiz. You will use the [[http://www.cs.colostate.edu/~hamiltom/cs200/BinaryTree.java | binary tree]] and [[http://www.cs.colostate.edu/~hamiltom/cs200/BT_Node.java | tree node]] classes.

!!!Week 11: 4/6 - 4/10

''Lectures:'' Monday: graphs (cont). Wednesday: midterm. Friday: more graphs [ [[Path:../../pdfs/graphs2.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 14\\
''Recitation:'' help with programming assignment, go over written hw, command-line arguments, review for midterm

!!!Week 12: 4/13 - 4/17

''Lectures:'' graphs - directed acyclic graphs and topological sorting of graphs; graph algorithms [ [[Path:../../pdfs/graphs3.pdf | slides]] ], relations [ [[Path:../../pdfs/relations.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 14, Rosen 8.1-8.5 (relations)\\
''Recitation:'' Implementing graphs.

!!!Week 14: 4/27 - 5/1

''Lectures:'' Dijkstra's algorithm (slides in the graph algorithms set), more problems on graphs [ [[Path:../../pdfs/graphs4.pdf | slides]] ]\\
hash tables [ [[Path:../../pdfs/hashtables.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 14 (graphs), 13 (hash tables) \\
''Recitation:'' Review of relations and grammars.

!!!Week 15: 5/4 - 5/8

''Lectures:'' hash tables (cont); discussion of final [ [[Path:../../pdfs/study_guide.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 13 \\
''Recitation:'' Programming part of final.

!!!Week 16:

Wed -- special review session 1-3pm at CSB130.
Thu -- final exam at 7am.
Added lines 90-94:

!!!Week 16:

Wed -- special review session 1-3pm at CSB130.
Thu -- final exam at 7am.
Added lines 84-89:

!!!Week 15: 5/4 - 5/8

''Lectures:'' hash tables (cont); discussion of final [ [[Path:../../pdfs/study_guide.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 13 \\
''Recitation:'' Programming part of final.
Changed line 81 from:
hash tables [ [[Path:../../pdfs/hashtables.pdf | slides]] ]
to:
hash tables [ [[Path:../../pdfs/hashtables.pdf | slides]] ]\\
Changed lines 81-82 from:
''Reading:'' Walls and Mirrors ch. 14 \\
to:
hash tables [ [[Path:../../pdfs/hashtables.pdf | slides]] ]
''Reading:'' Walls and Mirrors ch. 14 (graphs), 13 (hash tables)
\\
Changed line 80 from:
''Lectures:'' Dijkstra's algorithm (slides in the graph algorithms set), more problems on graphs [ [[Path:../../pdfs/graphs3.pdf | slides]] ]\\
to:
''Lectures:'' Dijkstra's algorithm (slides in the graph algorithms set), more problems on graphs [ [[Path:../../pdfs/graphs4.pdf | slides]] ]\\
Changed line 80 from:
''Lectures:'' Dijkstra's algorithm, more problems on graphs [ [[Path:../../pdfs/graphs3.pdf | slides]] ]\\
to:
''Lectures:'' Dijkstra's algorithm (slides in the graph algorithms set), more problems on graphs [ [[Path:../../pdfs/graphs3.pdf | slides]] ]\\
Changed lines 80-81 from:
''Lectures:'' Relations, Dijkstra's algorithm, more problems on graphs [ [[Path:../../pdfs/graphs3.pdf | slides]] ]
''Reading:'' Walls and Mirrors ch. 14, Rosen 8.1-8.5 (relations)\\
to:
''Lectures:'' Dijkstra's algorithm, more problems on graphs [ [[Path:../../pdfs/graphs3.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 14 \\
Changed line 78 from:
!!!Week 13: 4/27 - 5/1
to:
!!!Week 14: 4/27 - 5/1
Added lines 77-82:

!!!Week 13: 4/27 - 5/1

''Lectures:'' Relations, Dijkstra's algorithm, more problems on graphs [ [[Path:../../pdfs/graphs3.pdf | slides]] ]
''Reading:'' Walls and Mirrors ch. 14, Rosen 8.1-8.5 (relations)\\
''Recitation:'' Review of relations and grammars.
Changed lines 74-75 from:
''Lectures:'' graphs - directed acyclic graphs and topological sorting of graphs; graph algorithms [ [[Path:../../pdfs/graphs3.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch
. 14\\
to:
''Lectures:'' graphs - directed acyclic graphs and topological sorting of graphs; graph algorithms [ [[Path:../../pdfs/graphs3.pdf | slides]] ], relations [ [[Path:../../pdfs/relations.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 14, Rosen 8.1-8.5 (relations)
\\
Changed line 74 from:
''Lectures:'' graphs - directed acyclic graphs and topological sorting of graphs \\
to:
''Lectures:'' graphs - directed acyclic graphs and topological sorting of graphs; graph algorithms [ [[Path:../../pdfs/graphs3.pdf | slides]] ]\\
Added lines 71-76:

!!!Week 12: 4/13 - 4/17

''Lectures:'' graphs - directed acyclic graphs and topological sorting of graphs \\
''Reading:'' Walls and Mirrors ch. 14\\
''Recitation:'' Implementing graphs.
Changed line 68 from:
''Lectures:'' Monday: graphs (cont). Wednesday: midterm. Friday: more graphs \\
to:
''Lectures:'' Monday: graphs (cont). Wednesday: midterm. Friday: more graphs [ [[Path:../../pdfs/graphs2.pdf | slides]] ] \\
Changed line 63 from:
''Reading:'' Walls and Mirrors ch. 13; beginning ch. 14\\
to:
''Reading:'' Walls and Mirrors ch. 13; ch. 14.1-14.2\\
Changed line 62 from:
''Lectures:'' Balanced search trees (cont). Friday: graphs \\
to:
''Lectures:'' Balanced search trees (cont). Friday: graphs [ [[Path:../../pdfs/graphs1.pdf | slides]] ] \\
Changed lines 62-63 from:
''Lectures:'' Balanced search trees (cont) \\
''Reading:'' Walls and Mirrors ch. 13\\
to:
''Lectures:'' Balanced search trees (cont). Friday: graphs \\
''Reading:'' Walls and Mirrors ch. 13; beginning ch. 14\\
Added lines 65-70:

!!!Week 11: 4/6 - 4/10

''Lectures:'' Monday: graphs (cont). Wednesday: midterm. Friday: more graphs \\
''Reading:'' Walls and Mirrors ch. 14\\
''Recitation:'' help with programming assignment, go over written hw, command-line arguments, review for midterm
Changed line 56 from:
''Reading:'' Walls and Mirrors ch. 6.2\\
to:
''Reading:'' Walls and Mirrors ch. 6.2, ch. 12,13\\
Added lines 58-64:


!!!Week 10: 3/30 - 4/3

''Lectures:'' Balanced search trees (cont) \\
''Reading:'' Walls and Mirrors ch. 13\\
''Recitation:'' programming quiz. You will use the [[http://www.cs.colostate.edu/~hamiltom/cs200/BinaryTree.java | binary tree]] and [[http://www.cs.colostate.edu/~hamiltom/cs200/BT_Node.java | tree node]] classes.
Changed line 55 from:
''Lectures:'' Monday: grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] Wednesday: Working in teams - a talk by Debbie Bartlett Friday: Balanced search trees [ [[Path:../../pdfs/balancedTrees.pdf | slides]] ] \\
to:
''Lectures:'' Monday: grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] Wednesday: Working in teams - a talk by Debbie Bartlett. Friday: Balanced search trees [ [[Path:../../pdfs/balancedTrees.pdf | slides]] ] \\
Changed line 55 from:
''Lectures:'' Monday: grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] Wednesday: Working in teams - a talk by Debbie Bartlett\\
to:
''Lectures:'' Monday: grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] Wednesday: Working in teams - a talk by Debbie Bartlett Friday: Balanced search trees [ [[Path:../../pdfs/balancedTrees.pdf | slides]] ] \\
Changed line 57 from:
''Recitation:''
to:
''Recitation:'' implementing a heap
Changed lines 49-50 from:
''Lectures:'' Priority queues and heaps [ [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 12.2, ch. 6
.2\\
to:
''Lectures:'' Priority queues and heaps [ [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] \\
''Reading:''
Walls and Mirrors ch. 12.2\\
Added lines 52-57:

!!!Week 9: 3/23 - 3/27

''Lectures:'' Monday: grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] Wednesday: Working in teams - a talk by Debbie Bartlett\\
''Reading:'' Walls and Mirrors ch. 6.2\\
''Recitation:''
Changed lines 49-50 from:
''Lectures:'' Priority queues and heaps [ [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 12.2\\
to:
''Lectures:'' Priority queues and heaps [ [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] grammars [ [[Path:../../pdfs/grammars.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 12.2, ch. 6
.2\\
Changed line 49 from:
''Lectures:'' Priority queues and heaps [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] \\
to:
''Lectures:'' Priority queues and heaps [ [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] \\
Changed line 32 from:
''Recitation:'' recursion
to:
''Recitation:'' recursion\\
Added lines 46-51:

!!!Week 8: 3/9 - 3/13

''Lectures:'' Priority queues and heaps [[Path:../../pdfs/PQ_heaps.pdf | slides]] ] \\
''Reading:'' Walls and Mirrors ch. 12.2\\
''Recitation:'' More iterators
Changed line 44 from:
''Reading:'' Walls and Mirrors ch. 11\\
to:
''Reading:'' Walls and Mirrors ch. 11\\
Added lines 41-45:
!!!Week 7: 3/2 - 3/6

''Lectures:'' Trees, binary search trees (cont)\\
''Reading:'' Walls and Mirrors ch. 11\\
''Recitation:'' Iterators, recursion
Changed line 37 from:
''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees [[[Path:../../pdfs/trees.pdf | slides]]]\\
to:
''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees\\ [ [[Path:../../pdfs/trees.pdf | slides]] ]\\
Changed line 37 from:
''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees [ [[Path:../../pdfs/trees.pdf | slides]] ]\\
to:
''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees [[[Path:../../pdfs/trees.pdf | slides]]]\\
Changed line 35 from:
!!!Week 5: 2/23 - 2/27
to:
!!!Week 6: 2/23 - 2/27
Changed line 37 from:
''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees [[Path:../../pdfs/trees.pdf | slides]] ]\\
to:
''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees [ [[Path:../../pdfs/trees.pdf | slides]] ]\\
Added lines 34-39:

!!!Week 5: 2/23 - 2/27

''Lectures:'' Wednesday: Midterm. Mon, Fri: Trees, binary search trees [[Path:../../pdfs/trees.pdf | slides]] ]\\
''Reading:'' Walls and Mirrors ch. 11\\
''Recitation:'' Review for midterm, recursion
Changed lines 32-34 from:
''Recitation:''
to:
''Recitation:'' recursion
''Assignments:'' Second written assignment is [[assignments | available]]
Added lines 27-32:

!!!Week 5: 2/16 - 2/20

''Lectures:'' Sorting algorithms using divide and conquer strategies (cont)\\
''Reading:'' Walls and Mirrors 10.2, Rosen 7.1, 7.3\\
''Recitation:''
Changed line 24 from:
''Lectures:'' Queues (cont). Advanced sorting algorithms using divide and conquor strategies; evaluating complexity of recursive algorithms [ [[Path:../../pdfs/divide-conquer.pdf | slides]] ]\\
to:
''Lectures:'' Queues (cont). Advanced sorting algorithms using divide and conquer strategies; evaluating complexity of recursive algorithms [ [[Path:../../pdfs/divide-conquer.pdf | slides]] ]\\
Changed line 24 from:
''Lectures:'' Queues (cont). Advanced sorting algorithms using divide and conquor strategies; evaluating complexity of recursive algorithms\\
to:
''Lectures:'' Queues (cont). Advanced sorting algorithms using divide and conquor strategies; evaluating complexity of recursive algorithms [ [[Path:../../pdfs/divide-conquer.pdf | slides]] ]\\
Added line 19:
Changed lines 22-26 from:
!!!Week 4: 2/2 - 2/6

Lecture: [ slides ]
Reading: Walls and Mirrors 10.2, Rosen 7.1, 7.3
to:
!!!Week 4: 2/9 - 2/13
Changed line 26 from:
''Recitation:'' Review of big-O analysis, generics, stacks\\
to:
''Recitation:'' Programming a queue; work on programming assignment\\
Deleted line 15:
Added lines 20-28:

!!!Week 4: 2/2 - 2/6

Lecture: [ slides ]
Reading: Walls and Mirrors 10.2, Rosen 7.1, 7.3

''Lectures:'' Queues (cont). Advanced sorting algorithms using divide and conquor strategies; evaluating complexity of recursive algorithms\\
''Reading:'' Walls and Mirrors 10.2, Rosen 7.1, 7.3\\
''Recitation:'' Review of big-O analysis, generics, stacks\\
Changed line 19 from:
''Recitation:'' Review of big-O analysis, generics, stacks
to:
''Recitation:'' Review of big-O analysis, generics, stacks\\
Added line 20:
''Assignments:'' Second programming assignment is [[assignments | available]]
Changed line 19 from:
''Recitation:'' Review of big-O analysis, generics
to:
''Recitation:'' Review of big-O analysis, generics, stacks
Added line 3:
''Lectures:'' Course introduction; abstract data types (ADTs) [ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
Deleted line 4:
''Lectures:'' Course introduction; abstract data types (ADTs) [ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
Added line 10:
''Lectures:'' Measuring the efficiency of algorithms [ [[Path:../../pdfs/complexity.pdf | slides]] ]\\
Deleted line 11:
''Lectures:'' Measuring the efficiency of algorithms [ [[Path:../../pdfs/complexity.pdf | slides]] ]\\
Added lines 13-19:

!!!Week 3: 2/2 - 2/6


''Lectures:'' Stacks and Queues [ [[Path:../../pdfs/stacksAndQueues.pdf | slides]] ]\\
''Reading:'' chapters 7 and 8 in Walls and Mirrors\\
''Recitation:'' Review of big-O analysis, generics
Changed line 12 from:
''Recitation:'' Using checkin, review of linked lists, file IO, help on programming assignment\\
to:
''Recitation:'' Using checkin, review of linked lists, help on programming assignment\\
Changed line 12 from:
''Recitation:'' Using checkin, review of linked lists and file IO\\
to:
''Recitation:'' Using checkin, review of linked lists, file IO, help on programming assignment\\
Changed line 8 from:
!!!Week 1: 1/26 - 1/30
to:
!!!Week 2: 1/26 - 1/30
Changed line 12 from:
''Recitation:'' \\
to:
''Recitation:'' Using checkin, review of linked lists and file IO\\
Changed line 10 from:
''Reading:'' Sections 3.2,3.3 in Rose, Section 10.1 in Walls and Mirrors.\\
to:
''Reading:'' Sections 3.2,3.3 in Rosen, Section 10.1 in Walls and Mirrors.\\
Added lines 7-13:

!!!Week 1: 1/26 - 1/30

''Reading:'' Sections 3.2,3.3 in Rose, Section 10.1 in Walls and Mirrors.\\
''Lectures:'' Measuring the efficiency of algorithms [ [[Path:../../pdfs/complexity.pdf | slides]] ]\\
''Recitation:'' \\
Changed line 4 from:
''Lectures:'' Course introduction; abstract data types (ADTs) [[Path:../../pdfs/introduction.pdf | slides]] \\
to:
''Lectures:'' Course introduction; abstract data types (ADTs) [ [[Path:../../pdfs/introduction.pdf | slides]] ]\\
Changed line 4 from:
''Lectures:'' Course introduction; abstract data types (ADTs)\\
to:
''Lectures:'' Course introduction; abstract data types (ADTs) [[Path:../../pdfs/introduction.pdf | slides]] \\
Changed line 3 from:
''Reading:'' Chapter 4 in Walls and Mirrors.
to:
''Reading:'' Chapter 4 in Walls and Mirrors.\\
Changed line 5 from:
''Recitation:'' No recitations this week
to:
''Recitation:'' No recitations this week\\
Changed line 4 from:
''Lectures:'' Course introduction; abstract data types (ADTs)
to:
''Lectures:'' Course introduction; abstract data types (ADTs)\\
Changed lines 3-5 from:
-> ''Reading:'' Chapter 4 in Walls and Mirrors.
-> ''Lectures:'' Course introduction; abstract data types (ADTs)
-> ''Recitation:'' No recitations this week
to:
''Reading:'' Chapter 4 in Walls and Mirrors.
''Lectures:'' Course introduction; abstract data types (ADTs)
''Recitation:'' No recitations this week
''Assignments:'' First programming assignment is [[assignments | available]]
Changed line 1 from:
!!!Week 1: 1/21 - 8/23
to:
!!!Week 1: 1/21 - 1/23
Changed line 1 from:
!!!Week 1: 8/25 - 8/29
to:
!!!Week 1: 1/21 - 8/23
Changed lines 1-2 from:
Coming soon!
to:
!!!Week 1: 8/25 - 8/29

-> ''Reading:'' Chapter 4 in Walls and Mirrors.
-> ''Lectures:'' Course introduction; abstract data types (ADTs)
-> ''Recitation:'' No recitations this week
Added lines 1-2:

Coming soon!