Detailed schedule and class resources

Class 42

Sources for today: PairSum.zip

Activities for today: activity42.pptx.

Whiteboard notes for today: whiteboard-notes42.pptx.

Recording of this class: class meeting 42.

Class 41

Sources for today: Friends.java, FriendsIterator.java, FriendsIteratorUnfinished.java, FriendsNested.java.

Activities for today: activity41.pptx.

List traversal demonstration: traversal.pptx.

Recording of this class: class meeting 41.

Class 40

Sources and activities for today: same as for class 39.

Recordings of this class: segment 1, segment 2.

Class 39

Sources for today: LinkedList132.java, LinkedList132Unfinished.java, LinkedNode.java, ListADT.java, SuperHero.java.

Object diagram for linked list: linked-list-object-diagram.pptx.

Activities for today: activity39.pptx.

Recordings of this class: segment 1, segment 2.

Class 38

Sources for today: ArrayList.java.

Activities for today: activity38.pptx.

Recordings of this class: segment 1, segment 2.

Class 37

Sources for today: class37-src.zip.

Activities for today: activity37.pptx.

Recordings of this class: segment 1, segment 2.

Class 36

Sources for today: ArrayTools.java, ArrayListTools.java, CollectionSortingSearching.java, Search.java, SearchUnfinished.java.

Activities for today: activity36.pptx.

Recordings of this class: segment 1, segment 2.

Class 35

Sources for today: ArrayTools.java, RunningTimePractise.java, MergeSort.java, MergeSortUnfinished.java, MergeSortExperiment.java.

Activities for today: activity35.pptx.

Whiteboard notes for asymptotic analysis of merge sort and selection sort: asymptotic-analysis.pptx.

Recordings of this class: segment 1, segment 2.

Class 34

Sources for today: ArrayTools.java, SelectionSort.java, SelectionSortUnfinished.java. SelectionSortExperiment.java.

Activities for today: activity34.pptx.

Instructions for running time experiment: timing-experiment.pptx.

See also Chapter 10 of What Can Be Computed?, available on Moodle.

Webpage with good visualizations of different sorting algorithms, and a more detailed visualization of selection sort.

Recordings of this class: segment 1, segment 2.

Class 33

Sources for today: design-patterns.zip

Activities for today: activity33.pptx.

Recordings of this class: segment 1, segment 2.

Class 32

Midterm exam 2. Links for downloading and submitting the exam are available on Moodle.

Class 31

Exam review.

Recording of this class: class 31.

Class 30

Sources for today: QuadraticEquation.java

Activities for today: activity30.pptx.

Recordings of this class: segment 1, segment 2, segment 3.

Class 29

Sources for today: TowersOfHanoiIncomplete.java, TowersOfHanoi.java, EfficientCountZs.java, PermutationGenerator.java.

Activities for today: activity29.pptx.

Recordings of this class: segment 1, segment 2.

Class 28

Sources for today: Recurse2Incomplete.java, Recurse2.java

Lecture notes for today: class28-recursion-notes.pptx

Recordings of this class: segment 1, segment 2.

Class 27

First example of recursion (same as in study guide): recursive-example.pptx

Sources for today: Recurse.java, FibonacciNumbers.java.

Activities for today: activity27.pptx, and the annotated version

Recordings of this class: segment 1, segment 2, segment 3, segment 4.

Class 26

Sources for today: SayHiFromFile.java, myName.txt (you may need to right-click and "save as..."), Coffee.java, CoffeeException.java, CoffeeTest.java.

Activities for today: activity26.pptx

Recordings of this class: segment 1, segment 2.

Class 25

Sources for today: FirstExceptionExample.java.

Activities for today: activity25.pptx

Recordings of this class: segment 1, segment 2.

Class 24

Sources for today: TextMessage.java, MultimediaMessage.java, TextMessageList.java, Bird.java, Penguin.java.

Activities for today: activity24.pptx

Recordings of this class: segment 1, segment 2, segment 3, segment 4.

Class 23

Review of dynamic dispatch: dynamic-dispatch-review.pptx, annotated version

Sources for today: A.java, B.java, C.java, TextMessage.java, MultimediaMessage.java, TextMessageList.java, ExtendingObject.java.

Activities for today: activity23.pptx

Recordings of this class: segment 1, segment 2, segment 3.

Class 22

Sources for today: TextMessage.java, MultimediaMessage.java, InheritanceExamples.java, Employee.java, Teacher.java,

Activities for today: activity22.pptx

Object diagram showing dynamic dispatch: dynamic-dispatch-object-diag.pptx

Recording of this class: class22.

Class 21

Sources for today: TextMessage.java, MultimediaMessage.java.

Activities for today: activity21.pptx

Class diagram showing inheritance: inheritance-class-diagram.pptx

Recordings of this class: segment 1, segment 2, segment 3.

Class 20

Sources for today: WinningMovie.java, PalmeDOrInfo.java.

Activities for today: activity20.pptx

Object diagram for HashMap: HashMap-object-diagram.pptx

Recordings of this class: segment 1, segment 2, segment 3, segment 4.

Class 19

Sources for today: Dolphin.java, Duck.java, Sheep.java, MakesSound.java, Swims.java, TypeCastExamples.java.

Activities for today: activity19.pptx

Object diagram for type casts: typecast-obj-diag.pptx

Recordings of this class: segment 1, segment 2, segment 3, segment 4.

Class 18

Please complete the mid-semester survey.

Sources for today: class18-src.zip,

Activities for today: activity18.pptx

Interface object diagram: interface-obj-diagram.pptx

Recordings of this class: segment 1, segment 2, segment 3.

Class 17

Sources for today: Dolphin.java, Duck.java, MakesSound.java, Sheep.java, Swims.java.

Activities for today: activity17.pptx

Big ideas in the course so far: interface-intro.pptx

Recordings of this class: segment 1, segment 2, segment 3, segment 4.

Class 16

Midterm Exam.

Class 15

Notes listing what we covered in exam review: review.pptx.

Class 14

Sources for today: TwoDimensionalArrays.java.

Object diagrams for 2D arrays: 2d-array-obj-diagram.pptx

Activities for today: activity14.pptx

Recordings of this class: segment 1, segment 2.

Class 13

Sources for today: FirstArrayExample.java, RandomValues.java,

Object diagram for an array: array-obj-diagram.pptx

Activities for today: activity13.pptx

Recordings of this class: segment 1, segment 2,

Class 12

Announcement: please see the updated syllabus. The weightings for computing the final grade have been altered, and the participation grade has been eliminated.

Sources for today: Candidate2.java, Candidate2Demo.java, FirstStaticExample.java, JavaStaticMethods.java, Student2.java.

Activities for today: activity12.pptx

Recordings of this class: segment 1, segment 2, segment 3.

Class 11

#ScholarStrike discussion: scholar-strike.pptx

Sources for today:

Diagram for understanding == vs .equals(): equals-obj-diagram.pptx

Activities for today: activity11.pptx

Recordings of this class: segment 1, segment 2.

Class 10

Sources for today:

Explanation of the basic mechanics of a for loop: basic-for-loop.pptx

Activities for today: activity10.pptx

Recordings of this class: segment 1, segment 2, segment 3.

Class 9

Announcement: Lab 1 has been graded. Please follow the instructions on the How to... page for "Pulling graded files from GitHub and sharing with lab partner". If you were the submitter, make sure to share the grade and my comments with your lab partner. Some teams failed to submit their JUnit tests. This week I'm giving you the option to resubmit your tests, so please take advantage of that if you wish to.

Sources for today: DVD.java, VideoStore.java, VideoStoreTest.java.

Object diagram: videostore-diagram.pptx

Activities for today: activity09.pptx

Recordings of this class: segment 1, segment 2, segment 3.

Class 8

Sources for today: Bank.zip (again), Account5.java

Activities for today: activity08.pptx

Recordings of this class: segment 1, segment 2, segment 3,

Class 7

Sources for today:

Activities for today: activity07.pptx

Recordings of this class: segment 1, segment 2, segment 3.

Class 6

Sources for today:

Activities for today: activity06.pptx

Examples of a class diagram and an object diagram.

Recordings of this class: segment 1, segment 2,

Class 5

Sources for today: Account2.java, FindMaxStart.java, GradeCalculatorStart.java.

Activities for today: activity05.pptx

Recordings of this class: segment 1, segment 2, segment 3, segment 4,

Class 4

Required reading for today: JUnit tutorial, textbook section 8.7.

Sources for today: Candidate.java, Account2.java. After class, also download CandidateTest.java for reference, but during class we will create this file ourselves.

Activities for today: activity04.pptx

Recordings of this class: segment 1, segment 2, segment 3, segment 4, segment 5.

Class 3

Sources for today: Account2.java