Main Menu

Slides

We will try to publish slides shortly before the lectures. They are in “4-up” format as PDF.

Week 1

Reading: Chapter 9 (and review CIS 210 as necessary)

Course overview (Updated: 1/9/2012)

Review of objects (Unused.)

Inheritance, polymorphism, and interfaces

Code: Employee.java, Lawyer.java, EmployeeTest.java

Week 2

Graphical User Interfaces (ppt) (way more slides than we covered)

Code: GuiDemo.java (1/20/2012)

More code from class: TempConverter.java, TempListener.java

Cleaned up TempConverter example: TempConverter.java (cleaned up) (1/23/2012)

Week 3

Reading: Chapter 10.1, 15

ArrayIntList (part 1) (1/25/2012)

Code: ArrayIntListTest.java, ArrayIntList.java (version 1) (1/25/2012)

ArrayIntList (part 2) (1/27/2012)

Code: ArrayIntListTester.java, ArrayIntList.java (version 2) (1/27/2012)

Week 4

Reading: Chapter 13.1, 16.1, 16.2

Binary Search (1/30/2012)

References (2/1/2012)

References (2/3/2012)

Code: ListNode.java (with more comments) (2/3/2012), ListNodeDemo.java (2/3/2012)

Week 5

Reading: Chapter 16

More Linked Nodes (2/6/2012)

LinkedIntList (2/8/2012)

Code: LinkedIntList.java (2/8/2012), IntList.java (2/8/2012), IntListDemo.java (2/8/2012), ArrayIntList.java (implements IntList) (2/8/2012)

Week 6

Reminder: Midterm on Wednesday, February 15th!

Midterm Review

Example GUI Questions

Spring 2011 Midterm (Answer Key)

Winter 2011 Midterm (Answer Key)

Code for example GUI questions: LayoutDemo.java, ListenerDemo.java.

For anyone who was confused by how polymorphism works: Polymorphism

Real Midterm (Winter 2012) (Answer Key)

Errors and Exceptions

Week 7

Reading: Bonus appendix on stacks and queues

Stacks and Queues

More stacks and queues, generics, and complexity: Complexity

Recursion

Code: RecursionDemo.java

Week 8

Sets and Maps

Code: WordCounts.java (slightly cleaned up from class)

Maps, grammars, and iterators

Binary trees

Code: IntTreeNode.java, IntTree.java, IntTreeDemo.java (version 1). (Updated: 3/2/2012)

Week 9

Binary search trees

Code: IntTreeNode.java, IntTree.java, IntTreeTest.java (version 1).

Code: IntTree.java, IntTreeTest.java (version 2).

Huffman Code

Finals Week

Final Exam (Answer Key)