CSSE230 – Data Structures and Algorithms

Fall 2012–13 Schedule Overview updated Thu Aug 23 at 4:48:00 PM

All non-ANGEL web pages for the course are available from this index page.

This schedule page will begin with the schedule from a previous term, which will be updated as we go. We’ll try to update assignments and readings at least a week in advance. We’ll update daily schedules and slides just before class.

Preparation is to be completed before the class session.

Unless otherwise noted, all assignments are due at 8:00 AM on the day indicated. We recommend that you complete them before midnight the day before, but some students believe that their best work times are after midnight.


Session quick links:  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Week Session Preparation Due Topics Resources Major Programs
0

1

Thu Aug 30

Details
  • Nothing today, but things due almost every other day this week!
  • In addition to this column, you should always look at the Major Programs column.

  • Course introduction
  • Growable Array analysis
  • Main activities for Week 1:
    On your own: Skim/read some review material from the textbook and get back up-to-speed on programming by doing the WarmUpAndStretching assignment
    In class: Foundations of algorithm analysis
Warm Up and Stretching
1

2

Mon Sep 3

Details
  • Review the Syllabus, bring questions to class
  • Weiss §5.1, 5.2, 5.4–5.8, 7.2
  • Continue review of Weiss Ch. 1–6 (due before session 4).
  • Post to "Introduce Yourself" discussion forum on ANGEL; what you write can be as short or long as you wish.
  • Complete Diagnostic Quiz 1 on ANGEL (Lessons → Diagnostic Quizzes) by Tuesday (Friday in Fall term), 8:00 AM (no late days may be used)
  • Complete Diagnostic Quiz 2 and Quiz 3 on ANGEL by Wednesday (Monday in Fall term)), 8:00 AM (no late days)
  • (suggestion only) Make prograess on WarmUpAndStretching.
  • Growable Arrays recap
  • Big-oh review
  • Big-oh’s cousins, big-Omega and big-Theta
Warm Up and Stretching
1

3

Tue Sep 4

Details
  • Continue review of Weiss Ch. 1–6 (due before session 4)
  • Know the definitions in the Key Concepts at the ends of Ch. 1–3 ( include Chapter 4 by Monday)
  • Written Assignment 1 All course assignments are due at 8:AM unless otherwise specified.

    Submit to drop box in Moodle.
    Most weeks, written assignments will be due on Tuesday at 8 AM.
  • Limits and asymptotic behavior
  • Abstract data types (ADTs)
  • Review of basic data structures
Warm Up and Stretching Due Thursday at 8:00 AM.
1

4

Thu Sep 6

Details
  • Finish review of Weiss Ch. 1–6
  • Diagnostic Quiz Review Items
  • Review Comparable, function objects, Comparator.
Pascal Christmas Tree
2

5

Mon Sep 10

Details
  • Hardy/Colorize partner preference survey (on ANGEL)
  • Maximum Contiguous Subsequence Sum (MCSS) problem
  • MCSS cubic and quadratic algorithms
  • Work time
Pascal Christmas Tree
2

6

Tue Sep 11

Details
  • MCSS linear(!) algorithm
Pascal Christmas Tree
2

7

Thu Sep 13

Details
  • §7.1-7.3, 7.5.1
Hardy Part 2
and Colorize
3

8

Mon Sep 17

Details
  • Ch. 15-17 (should be mostly review)
  • §18.1-18.3
  • Pascal partner evaluation (On ANGEL) due Wednesday at noon.
  • Java Collections Framework
  • Trees intro
Hardy Part 2
and Colorize
3

9

Tue Sep 18

Details
  • Install Weiss packages on your system so they will be available for you to use
  • More binary tree
  • Binary tree traversals
  • Questions about Exam 1
Hardy Part 2
and Colorize
3

10

Thu Sep 20

Details
  • §18.4
  • More tree methods (contains, duplicate, equals)
  • Binary tree iterators
  • Size vs. Height in a binary tree
Displayable Binary Tree
4

11

Mon Sep 24

Details
  • § 19.1 - 19.2
  • Hardy/Colorize partner evaluation due Wednesday at noon (on Angel)
  • BST intro, contains, insert, delete
  • Finding kth element of a BST
  • Threaded binary trees
  • Work time
Displayable Binary Tree
4

12

Tue Sep 25

Details
  • Prepare for Exam 1
  • Doublets partner preference survey on ANGEL
  • Written Assignment 4 Due FRIDAY at 5:00 PM. (Note that your instructor will be out of town on Friday, so ask questions on Thursday if you have them).
  • No Thursday class due to Wednesday night exam
  • Exam 1
    Wednesday <7:00 - 9:00 PM>
    Section 1 - O267, Section 2 - O269
  Displayable Binary Tree
4

13

Thu Sep 27

Details
  • 19.3
  • Displayable Binary Tree A "grace day" until Tuesday at 8 AM. This is a "free late day". No additional late days may be used after this time.
  • Induction example: Fibonacci
  • Completely-balanced trees: nice idea, but ...
  • Height-balanced trees, maximum height
  • Discuss a few exam questions
  • Doublets preview
  • Meet Doublets partner(s)
Doublets
5

14

Mon Oct 1

Details
  • §19.4
  • EditorTrees team preference survey (due Wednesday at noon).
  • AVL Trees: How to find the node where roation is needed
  • Single and double rotations; effect on subtree height.
  • Practice with AVL Tree Rotations
  • Threaded/Doublets work time.
Doublets
5

15

Tue Oct 2

Details
 
  • Threaded tree recap
  • Doublets Project work time
Doublets
5

16

Thu Oct 4

Details
  • §12.1
  • §7.7
  • EditorTrees intro and teams
  • Exhaustive search, non-attacking queens problem.
  • Non-attacking queens problem
EditorTrees
6

17

Mon Oct 8

Details
  • §14.3–14.5
  • §20.1-20.3
  • Doublets partner evaluation (Wednesday noon)
  • Student questions on EditorTree Requirements
  • Graphs and their representations
  • Hash Table inplementation
EditorTrees
6

18

Tue Oct 9

Details
  • Chapter 21
  • Priority Queues and Heaps
  • Heap Sort
EditorTrees
7

19

Tue Oct 16

Details
  • § 7.5, 7.5.1
  • Editor Trees Milestone 1 due at 8 AM
  • Extended Binary trees,
  • tries
  • DAGs
EditorTrees
7

20

Thu Oct 18

Details
 
  • Scrabble team preferences survey (by Wednesday at 5 PM)
  • Intro to recurrence relations
EditorTrees
7

21

Mon Oct 22

Details
  • § 7.5.2, 7.5.3
  • EditorTrees work time
  • No slides today
EditorTrees
8

22

Tue Oct 23

Details
  • §21.1-21.3, 21.5
  • Scrabble design
Scrabble
8

23

Thu Oct 25

Details
  • Scrabble Design/Implementation
  Scrabble
8

24

Mon Oct 29

Details
  • §8.1-8.5
  • Master Theroem recap
  • Sorting review
  • Quicksort, including average-case analysis
Scrabble
9

25

Tue Oct 30

Details
  • §8.6-8.8
 
  • Quicksort improvements
  • Lower bound for sorting algorithms.
  • Radix sort
  • Scrabble work time
Scrabble
9

26

Thu Nov 1

Details
  • Study for the exam!
  • No morning class today due to evening exam
 
  • Exam 2
    7:00-9:00 PM
    Section 1 - O267, Section 2 - O269
  • Covers material through session 24, WA8, EditorTrees
  • No regular class meeting Tuesday morning
  Scrabble
9

27

Mon Nov 5

Details
 
  • Exam redux
  • Scrabble work time
Scrabble
10

28

Tue Nov 6

Details
  • Review §19.3
 
  • More average case calculations
  • Skip lists
  • Ethics and computer programming
Scrabble
10

29

Thu Nov 8

Details
 
  • Scrabble work time
  • No slides
Scrabble
10

30

Mon Nov 12

Details
 
  • Scrabble Teammate Performance Evaluations on ANGEL by noon Thursday (milestone 5)
  • Written Assignment 10. You are not required to write this up and turn it in, but it should be good practice for the final exam.
  • Scrabble presentations (Milestone 4)
  • Course evaluations
  • Discussion of Final Exam
Scrabble
11

31

Tue Nov 13

Details
 
  • Final Exam During Exam Week (Tuesday morning)