CSCI 235 Spring 2013
Data Structures and Software Design
Archived Class
Charles Cusack
Computer Science
Hope College
Main
Schedule
Grading
Gradebook

Policies
Advice
College
    Policies

Notes
Programs
Tutorials

CSCI 255
Others

Admin
previous     next     today     future     all    

Schedule for weeks 1 through 16

Wk Day Date TopicResourcesEvents

1TueJan 08
  • Introduction to the Course
  • OOP Review
  • Review Questions

  • ThuJan 10
  • OOP Review
  • Style
  • Documentation
  • OFWJ 1-7 (review)
  • OFWJ 8-9
  • HW1 Answers
  • HW 1 due
  • WS 1 (Java Code Evaluation)

  • FriJan 11
  • Equality
  • Swapping in Java
  • Eclipse and SVN
  • OFWJ 10
  • JSS Appx A and B
  • How to Write an Equality Method in Java
  • Setting up Eclipse
  • SVN and Eclipse
  • WS 2 (Equality And Swap)

  • 2TueJan 15
  • Inheritance
  • WS 3 (Inheritance)

  • ThuJan 17
  • Advanced OOP
  • WS 3 (continued)

  • FriJan 18
  • UML
  • Examples
  • SampleClock2
  • Target Game
  • Drawing Example
  • HW 2 due

  • 3TueJan 22
  • GUI
  • Java Swing
  • Event Handling
  • Threads (just a little)
  • OFWJ 11
  • SimpleApplet
  • SwingExample
  • HW 3 due (Monday @ 11:59pm)

  • ThuJan 24
  • Java Swing
  • Sorting Demo
  • ListenerExample
  • WS 4 (Swing)

  • FriJan 25
  • Design
  • OFWJ 13
  • JSS 1
  • Read 3-tier Applications
  • MVC Diagram
  • Model-view-controller (Wikipedia)
  • MVC_Ferzle
  • PiEstimator
  • TableExample

  • 4TueJan 29
  • Bible Reader Design
  • Read Bible Reader Overview
  • HW 4 due (Monday @ 11:59pm)

  • ThuJan 31
  • JUnit Testing
  • Testing Notes
  • JUnit Tutorial
  • junit.org
  • JUnit API
  • Assert API
  • HW 5 due (Wednesday@ 11:59pm)

  • FriFeb 01
  • Testing
  • Testing Clock Exercise

  • 5TueFeb 05
  • Bible Reader
  • Junit testing
  • Error Handling
  • Exceptions
  • OFWJ 12.1-12.8
  • Project 1 due
  • WS 5 (Exceptions)

  • ThuFeb 07
  • Error Handling
  • Exceptions
  • OFWJ 12.9-12.10
  • Project 2 due
  • WS 5 (Continued)

  • FriFeb 08
  • File I/O
  • FileIO example
  • HTMLeditor
  • Scatter Plot
  • Project 2.5 due (noon)
  • Project 3 due (class time)

  • 6TueFeb 12
  • Winter Break
  • No Class

  • ThuFeb 14
  • Analysis of Algorithms
  • Growth rates
  • Limits
  • JSS 2
  • Read Analysis of Algorithms Notes
  • Read Asymptotic Notation Notes
  • Read Asympotic Notation Handout
  • FunctionGrowth Applet
  • Project 4.1 due (Thu@11:59pm)

  • FriFeb 15
  • Computational Complexity
  • Read The Complexity of Songs
  • Project 4.2 due (Fri@11:59pm)
  • WS 5.5(Complexity)

  • 7TueFeb 19
  • Analysis of Algorithms
  • Growth rates
  • Limits
  • Review
  • HW 6 due

  • ThuFeb 21
  • Review
  • Bible Reader
  • Project 5 due (Wed@11:59pm)

  • FriFeb 22
  • OFWJ 8-13
  • JSS 1-4
  • Midterm Exam

  • 8TueFeb 26
  • Lessons from Bible Reader
  • Bible Reader Worksheet

  • ThuFeb 28
  • Java Collections
  • Stacks
  • JSS 3
  • Collections Notes
  • Java Collection Links
  • Java Collections Diagram
  • Data Structure Visualizations
  • Project 6 due (Thurs@11:59pm)

  • FriMar 01
  • Bible Reader Catch-up day
  • Hand in WS 6

  • 9TueMar 05
  • Linked Lists
  • JSS 4
  • Read Linked List Notes
  • 50 minute class

  • ThuMar 07
  • Stacks
  • Read Stack Notes
  • Stack Example
  • Project 7 due (Thursday@11:59pm)

  • FriMar 08
  • Queues
  • JSS 5
  • Read Queue Notes
  • Queue Example
  • Project 8 due (Friday@11:59pm)
  • WS 7 (Queue Implementation)

  • 10TueMar 12
  • Lists
  • JSS 6
  • Coding (YouTube video)
  • WS 8 (Basic Data Structure Complexity)

  • ThuMar 14
  • Recursion
  • Factorials
  • Fibonacci
  • JSS 7
  • Read Recursion Notes
  • Recursive Functions
  • Project 9 due (Thursday@11:59pm)

  • FriMar 15
  • Spring Break
  • No Class

  • Spring Break Week

    11TueMar 26
  • Binary Search
  • Towers of Hanoi
  • Insertion Sort
  • Selection Sort
  • Bubble Sort
  • JSS 8
  • Read Binary Search Analysis
  • Basic Sorting Notes
  • Sorting Demos

  • ThuMar 28
  • Merge Sort
  • Quick Sort
  • Radix Sort
  • Merge Sort Notes
  • Quick Sort Notes
  • Radix Sort Notes
  • Radix Sort Demo (binary)
  • Data Structure Visualizations
  • HW 7 due

  • FriMar 29
  • Good Friday
  • No Class

  • 12TueApr 02
  • Trees
  • Binary Trees
  • Tree Traversals
  • JSS 9
  • Graphs and Trees Notes (pp 24-38)
  • Pre/In/Postfix Notation Demo
  • Tree Traversal Demo
  • Project 10 due (Tuesday@11:59pm)

  • ThuApr 04
  • Binary Search Trees
  • JSS 10.1-10.4
  • BST Notes
  • Balanced Tree Demo
  • HW 8 due

  • FriApr 05
  • Balanced Trees
  • JSS 10.5-10.9

    13TueApr 09
  • Heaps
  • Priority Queues
  • Heap Sort
  • Huffman Encoding
  • Tree-Type Data Structures
  • JSS 11
  • Heaps and Heapsort Notes
  • Heap Sort Demo
  • Greedy Algorithms Notes (pgs 5-18)
  • Visualizations Applet (Has Huffman Encoding)

  • ThuApr 11
  • Combining Collections
  • Project 11 due (Thursday@11:59pm)

  • FriApr 12
  • Multi-way Search Trees
  • JSS 12
  • Multi-Way Search Trees Notes
  • Trees Worksheet

  • 14TueApr 16
  • Graphs
  • JSS 13
  • Graphs and Trees Notes (pp 1-23)
  • Algoraph

  • ThuApr 18
  • More Graphs
  • HW 9 due

  • FriApr 19
  • Hashing
  • JSS 14
  • Data Structure Visualizations
  • Hashing Applet
  • Hashing Notes

  • 15TueApr 23
  • Hashing
  • Quiz (Graphs and Hashing)
  • Hashing Worksheet

  • ThuApr 25
  • Semester Review
  • Project 12 due (Thursday@11:59pm)

  • FriApr 26
  • No Class

  • ExTueApr 30
  • Everything
  • Pencil and paperFinal Exam
  • Section 1: 9-11 am
  • Section 2: 3-5 pm