CX 121 - Fall 2002
Introduction to Computer Science
Announcements
-
- The "I Doubt It" game:
- The "I Doubt It"
challenge!
- The
Tournament
-
Homework 10 announcements:
- Due Friday, December 6 by 3 PM
- Help session Wednesday 12/4 in Warner 507, 8-10 PM
- Previous announcements
Exams
- Exam 1: Wednesday, 10/9, 7:00-9:00 PM in Warner 203.
- Exam 2:
take-home programming exam, due Monday, 11/25
at the beginning of class.
Solutions.
- Final: Tuesday 12/10 9AM-12 in WNS 202;
Tuesday 12/10 7-10PM in WNS 203;
Wednesday 12/11 9AM-12 in WNS 202;
Thursday 12/12 9AM-12 room TBA
Assignments
- Assignment 1, due Monday, 9/16.
Solutions.
- Assignment 2, due Friday, 9/20.
Solutions.
- Assignment 3, due Friday, 9/27.
Solutions.
- Assignment 4, due Friday, 10/4.
Solutions.
- Assignment 5, due Monday, 10/14.
Solutions.
- Assignment 6, due Wednesday, 10/23.
Solutions.
- Assignment 7, due Friday, 11/1.
Solutions.
- Assignment 8, due Friday, 11/8.
Solutions.
- Assignment 9, due Monday, 11/18.
Solutions.
- Assignment 10, due Friday, 12/6.
Solutions.
Lectures & Readings
- Mon 9/9 - Course Introduction, HTML. Reading: Appendix J.
- Wed 9/11 - More HTML, Sample table.
Reading: Appendix J.
- Fri 9/13 - Intro to Java, Applets, Sample applets.
Reading: Chap 1.
- Mon 9/16 - Invoking Java applets, BuggleWorld.
Reading: Chap 1.
- Wed 9/18 - Object-oriented programming: classes, objects, methods, class contracts.
Reading: Chap 4.
- Fri 9/20 - Contracts, Colors, Writing Java Methods,
SquareWorld. Reading: Chap 4.
- Mon 9/23 - Execution diagrams. Reading: Chap 2, HW3.
- Wed 9/25 - Execution diagrams, parameter passing
(example), top-down programming.
- Fri 9/27 - PictureWorld, non-void methods. Reading: Chap 2.
- Mon 9/30 - LeafWorld, divide, conquer, and glue.
- Wed 10/2 - Writing classes, instance variables. Reading: Chap 2, 7.
- Fri 10/4 - Object diagrams. Reading: Chap 2, 7.
- Mon 10/7 - Conditionals, IfWorld,
SnakeWorld.
Reading: Chap 3.0-3.2, 3.4.
- Wed 10/9 - GUI design LayoutTest.
- Fri 10/11 - Return and go over Midterm 1; More GUI Design,
InkIncForm.
- Mon 10/14 - GUI event handling,
Counter.
- Wed 10/16 - More GUI event handling, discussion of
Homework 6.
- Fri 10/18 - Recursion I.
RecursionWorld.
Reading: Sec 11.0-11.1.
- Mon 10/21 - Recursion II.
RecursionWorld II.
Reading: Chap 11.
- Wed 10/23 - Recursion III: more recursive pictures.
TreeWorld,
SnowflakeWorld.
- Mon 10/28 - Recursion IV: methods that return values.
SnowflakeWorld,
BagelWorld.
- Wed 10/30 - Recursion V: methods that return values, execution diagrams.
Recursive functions,
Towers of Hanoi
(Hanoi applet).
- Fri 11/1 - Static (class) methods, invocation trees, tail recursion; overview of
upcoming CX courses.
- Mon 11/4 - Iteration. Reading: Chap 3.6-3.8.
- Wed 11/6 - Iteration: examples with while and for loops; Scope.
- Fri 11/8 - Iteration: tail recursion.
- Mon 11/11 - Data abstraction, classes for I Doubt It game.
- Wed 11/13 - Player hierarchy for
I Doubt It.
- Fri 11/15 - I Doubt It, Exam 2, Arrays.
- Mon 11/18 - Arrays.
- Wed 11/20 - Sorting: motivation, elementary and recursive methods;
Sorting applet.
- Fri 11/22 - Analysis of algorithms; sorting running times;
Sort.java.
- Mon 11/25 - Linear search; binary search.
- Mon 12/2 - Linked lists.
IntList.java.
- Wed 12/4 - Exam 2 Solutions; More Linked lists.
- Fri 12/6 - I Doubt It tournament; Course wrapup,
summary and review.