CS 201 - Spring 2013

Data Structures

Announcements

Final projects

Homework and Exams

  1. Homework 0, due Wednesday 2/13.
  2. Homework 1, due Wednesday 2/20. Solutions.
  3. Homework 2, due Wednesday 2/27. Solutions.
  4. Homework 3, due Wednesday 3/6. Solutions.
  5. Homework 4, due Wednesday 3/13. Solutions.
  6. Homework 5, due Friday 3/22. Solutions.
  7. Homework 5.5 (optional), due Wednesday 4/3. Solutions.
  8. Homework 6, due Wednesday 4/10. Solutions.
  9. Homework 7, due Wednesday 4/17. Solutions.
  10. Homework 8, due Wednesday 4/24. Solutions.
  11. Exam 2, due Wednesday 5/1 at 9:05am. Solutions.
  12. Final project, due Monday 5/13.

Lectures and Readings

  1. 2/11 - Course info, overview    (Ch 0, App B.1)
  2. 2/13 - Java lab, SumNum.java, HW 1 exercises    (App B.2.1, B.4, B.5)
  3. 2/18 - More Java, examples    (App B.2.2, B.4, B.5)
  4. 2/20 - Object-oriented progamming, examples   (Ch 1)
  5. 2/22 - More OO, Buggles, algorithmic complexity    (Ch 1, Ch 5.1, Handout on recurrence equations)
  6. 2/25 - Interfaces, Vectors, ReadWords.java    (Ch 1.8, Ch 3-3.3)
  7. 2/27 - Vector implementation    (Ch 3.4-5)
  8. 3/1   - Sorting: bubble, selection, insertion sort, Obama on sorting (2008)    (Ch 6.1-3)
  9. 3/4   - Merge sort, quick sort, SortArrays.java, complexity of sorting, xSortLab    (Ch 6.4-5)
  10. 3/6   - Generics, sorting objects, HW 4 code, examples    (Ch 4, Ch 6.7-10)
  11. 3/8   - Spaghetti, counting, bucket, and radix sort; summmary    (Ch 6.6)
  12. 3/11 - Lists, List Interface, SinglyLinkedList    (Ch 9-9.4)
  13. 3/13 - IntLists, IntListOps, HW 5, Eclipse
  14. 3/15 - More IntListsOps, append, reverse, HW 5
  15. 3/18 - Exam review, complexity of list ops, CircularlyLinkedList, DoublyLinkedList    (Ch 9.6, 9.5)
    3/19 - Exam 1, Study Guide
  16. 3/20 - Stacks, stack applications, postfix notation / RPN    (Ch 10.1, Wikipedia, xkcd)
  17. 3/22 - Queues, MazeRunner.java   (Ch 10.2, 10.3)
  18. 4/1   - Iterators (example), Comparable objects, Ordered structures    (Ch 8, 11)
  19. 4/3   - Trees, IntTrees, IntTreeOps   (Ch 12.1)
  20. 4/5   - IntTreeOps, tree traversals    (Ch 12.1, 12.6)
  21. 4/8   - Priority queues, Heaps, Heap applet    (Ch 13.1, 13.4.1)
  22. 4/10 - Skew heaps, HW 7 heap applet    (Ch 13.4.3)
  23. 4/12 - Applets, HW 7 heap applet source, examples
  24. 4/15 - Binary Search trees, Bst.java, BST applet    (Ch 14)
  25. 4/17 - Splay trees, applet, 2-3 trees, applet    (Ch 14.4-7)
  26. 4/22 - 2-3-4 trees, red-black trees, tree applets    (Ch 14.7)
  27. 4/24 - Exam 2 info, AVL trees, Maps, hashtables    (Ch 15.2, 15.4)
  28. 4/26 - Hashtable implementations    (Ch 15.4)
  29. 4/29 - Hashtables, graphs    (Ch 15.4, 16.1)
  30. 5/1   - Graph representations and implementation, final project    (Ch 16.2-3)
  31. 5/3   - Mouse and key events, double-buffering, MouseTest, BoxGame, KeyTest, Click
  32. 5/6   - Animation Threads, TwoThreads, SimpleThread, Anim, Squash, Squash2, AnimDemo, JDK 1.4 sample applets
  33. 5/8   - Final project presentations #1
  34. 5/10 - Final project presentations #2
  35. 5/13 - Course summary, final exam review
    5/17 - Final exam, MBH 216, 9-noon. Study Guide.

Links