CSCI 235 Spring 2015
Data Structures and Software Design
Archived Class
Charles Cusack
Computer Science
Hope College
Main
Schedule
Grading
Gradebook
Homework
Links
Policies
College Policies
Advice
Notes
Programs
Tutorials
CSCI 125
CSCI 255
MATH 131 (01 and 02)
Others
Admin
previous next
today
future
all
Schedule for weeks 1 through 16
Wk
Day
Date
Topic
Resources
Events
1
Tue
Jan 06
Course Introduction
OOP Review
Thu
Jan 08
Review
Equality
Swapping in Java
Review
OFWJ
1-7
Read
How to Write an Equality Method in Java
Java equals Documentation
Java hashCode Documentation
Fri
Jan 09
SVN and Eclipse
Review
OFWJ
8-10
SVN and Eclipse
HW 1
due
2
Tue
Jan 13
Inheritance
SVN
Read
Version Control with Subversion
Preface (pages xiv-xv) and Ch 1 (pages 1-14)
Thu
Jan 15
UML
Inheritance
Review
OFWJ
8-10
Read
JSS
Appendix A-B
Target Game
SampleClock2
Fri
Jan 16
Java Swing
OFWJ
11
JSS
Appendix C-D
Look at
SimpleApplet
Look at
SwingExample
HW 2
due
3
Tue
Jan 20
More Swing
Sorting Demo
ListenerExample
HW 3
due
HW 4
due
Thu
Jan 22
Design
OFWJ
13
JSS
1
Read
3-tier Applications
MVC Diagram
Model-view-controller (Wikipedia)
MVC_Ferzle
PiEstimator
TableExample
Fri
Jan 23
Bible Reader Design
Read
Bible Reader Overview
HW 5
due
4
Tue
Jan 27
JUnit Testing
Testing Notes
JUnit Tutorial
junit.org
JUnit API
Assert API
Thu
Jan 29
Testing
Testing Clock Exercise
Project 0 due
Fri
Jan 30
Bible Reader
Error Handling
Exceptions
OFWJ
12.1-12.8
HW 6
due
5
Tue
Feb 03
Error Handling
Exceptions
OFWJ
12.9-12.10
Read
Pair Programming
Project 1 due
Thu
Feb 05
File I/O
FileIO
example
HTMLeditor
Scatter Plot
Project 2 due
Fri
Feb 06
Project
Project 3 due
6
Tue
Feb 10
Winter Recess
No Class
Thu
Feb 12
Analysis of Algorithms
Growth rates
Limits
JSS
2
Read
Analysis of Algorithms Notes
Read
Asympotic Notation Handout
Asymptotic Notation Notes
FunctionGrowth Applet
Fri
Feb 13
Computational Complexity
An Active Introduction to Discrete Math and Algorithms
(See Chapter 7, especially sections 7.2-7.3)
Project 4 due
7
Tue
Feb 17
Analysis of Algorithms
Growth rates
An Active Introduction to Discrete Math and Algorithms
(See Chapter 7, especially sections 7.2-7.3)
HW 7
due
Thu
Feb 19
Review
Bible Reader
Project 5 due
Fri
Feb 20
OFWJ 8-13
JSS 1-2
Midterm Exam
8
Tue
Feb 24
Iterators
List processing
JSS 7
Thu
Feb 26
Java Collections
JSS 3
Collections Notes
Java Collection Links
Java Collections Diagram
Java Collections Introduction
Data Structure Visualizations
Project 6 due
Fri
Feb 27
Linked Structures
JSS 4
Read
Linked List Notes
Data Structure Visualizations
(runnable jarfile w/ linked lists, etc.)
9
Tue
Mar 03
Stacks
Read
Stack Notes
Stack Example
Stack Animation (Array)
Stack Animation (Linked List)
Project 7 due
Thu
Mar 05
Queues
JSS 5
Read
Queue Notes
Queue Example (unimplemented)
Queue Animation (Array)
Queue Animation (Linked List)
Fri
Mar 06
Misc
Project 8 due
10
Tue
Mar 10
Lists
JSS 6
HW 8
due
Thu
Mar 12
Recursion
Factorials
Fibonacci
Binary Search
Towers of Hanoi
JSS 8
Read
Recursion Notes
Recursive Functions
Project 9 due
Fri
Mar 13
Spring Break!
No Class
Spring Break Week
11
Tue
Mar 24
Binary Search
Insertion Sort
Selection Sort
Bubble Sort
JSS 9
Read
Binary Search Analysis
Basic Sorting Notes
Sorting Demos
Thu
Mar 26
Merge Sort
Quick Sort
Radix Sort
Merge Sort Notes
Quick Sort Notes
Radix Sort Notes
Radix Sort Demo (binary)
Data Structure Visualizations
Fri
Mar 27
Trees
Binary Trees
Tree Traversals
JSS 10
Graphs and Trees Notes
(pp 24-38)
Pre/In/Postfix Notation Demo
Tree Traversal Demo
Project 10 due
12
Tue
Mar 31
Treesort
Binary Search Trees
Balanced Trees
JSS 11.1-11.4
BST Notes
Balanced Tree Demo
Thu
Apr 02
Balanced Trees
JSS 11.5-11.6
HW 9
due
Fri
Apr 03
Good Friday
No Class
13
Tue
Apr 07
Sets
Maps
JSS 13
Thu
Apr 09
Heaps
Priority Queues
Heap Sort
JSS 12
Heaps and Heapsort Notes
Heap Sort Demo
Project 11 due
Fri
Apr 10
Heaps
Data Structure Efficiency
HW 10
due
14
Tue
Apr 14
Graphs
JSS 15
Graphs and Trees Notes
(pp 1-23)
Project 13.1 due
Thu
Apr 16
Graphs
AIDMA
Read Ch 10.1-10.3, 10.5
Algoraph
Project 12 due
Fri
Apr 17
Graphs
15
Tue
Apr 21
Hashing
JSS Appendix E
Hashing Notes
Thu
Apr 23
Review
Fri
Apr 24
Spring Fling
Project 13.2 due (noon)
No Class
Ex
Mon
Apr 27
Section 2 Exam, 3-5pm
Wed
Apr 29
Section 1 Exam, 12:30-2:30pm