| Date | What's Up? |
|---|---|
| 12/04/2007 |
Last Meeting - Course Evaluation - Quick review of graph terminology - Finding single-source shortest path on an unweighted directed graph [Lab 12] - Lab 12 PowerPoint - Thanks for the good time we had this semester. :) |
| 11/27/2007 |
Java Dictionary ADT Interfaces: Map, SortedMap, Set, SortedSet
[Lab 11]
Set is a special case of Map where keys are identical to values.SortedSet is a special case of SortedMap where keys are identical to values.
Map (Set) when you want a fast access. Use SortedMap (SortedSet) if the ordering of the keys is crucial. For example, use a TreeSet to store grades when you want to list the grades in order from highest to lowest; use a HashSet when you just want to look up whether a grade exists in the collection.
|
| 11/20/2007 | Project Discussion |
| 11/13/2007 | Review for Midterm 2 |
| 11/06/2007 |
Quick Review of Tree Traversals: Preorder, Postorder, Breadth-first, Inorder (for binary trees) Binary Heap [Lab 8] - Heap operations: add, removeRoot- add
removeRoot
- Use this declaration for BinaryMinHeap: public class BinaryMinHeap<E extends Comparable<? super E>> implements BinaryMinHeapI<E>- How to keep track of the last node?
- Use this Symbol class to avoid warnings (in case you want to implement Huffman encoding): Symbol.java |
| 10/30/2007 |
Linked Structures [Lab 7] - Time complexity of each list operation - Stack and Queue: Time complexity of each operation - Appending two lists: analyzing running time - Solution to Lab 7 |
| 10/23/2007 |
Getting to know Eclipse: a powerful Java IDE [Lab 6]
|
| 10/16/2007 | No Meeting: Fall Break |
| 10/09/2007 | Review for Midterm 1 |
| 10/02/2007 |
Mathematical Induction and Big-O Notation (continued) - Proving equalities is usually easier than proving inequalities. How to determine Big-O in a given algorithm? - Take the advantage of Big-O: insignificant terms don't matter; constants don't matter. - Use summation to calculate the running time of the loop. - Supplementary Document |
| 09/25/2007 |
Mathematical Induction and Big-O Notation - Induction is quite similar to trying to fall a sequence of dominos. - Big-O is mostly used in analyzing complexity of algorithms. - To prove that f(n) is O(g(n)), we just need to find a constant c and a natural number N such that the condition in the definition holds, whether they be an explicit number or in terms of some other variables. - To prove that f(n) is not O(g(n)), we usually prove by contradiction. - Solution to Lab 3 |
| 09/18/2007 |
Counting exact number of steps in code snippets. - Need to count primitive operations right:
- Consider the worst case for if statements. - Sometimes parts of the code never execute! - Solution to Lab 2 |
| 09/11/2007 |
First Meeting - Icebreaker and Introductions - Basic Unix Tutorial: ls, pwd, cd, mkdir, rmdir, mv, cp, rm, man, whoami, hostname, less, more- Java and Code Repetition [Lab 1] |