| Week |
Session |
Preparation |
Due |
Topics |
Resources |
Major Programs |
| 0 |
1
Thu Aug 30
Details
|
- Read the Syllabus
- Bookmark this schedule page.
- Email your instructor if you forgot your SVN password
- Review Weiss Ch. 1–6 this week: many pages, mostly review. Carefully read the new stuff and skim the rest: this document may help guide you).
- Install software for the course:
- Java 8,
- Eclipse (current version - I use Java EE), and
- Subclipse (Update from Eclipse > Help > Install, URL = http://subclipse.tigris.org/update_1.8.x
|
- Nothing today
- Always look at the Major Programs column, too, for the programming assignment of the week.
|
- Course introduction
- Growable Array analysis
-
Week 1: On your own: Skim/read review from the book and get back up-to-speed on programming by doing the WarmUpAndStretching assignment In class: Algorithm analysis |
|
|
Warm Up and Stretching
|
| 1 |
2
Mon Sep 3
Details
|
- Weiss §5.1, 5.2, 5.4–5.8, 7.2
- Continue reviewing Weiss Ch. 1–6.
|
- Post to "Introduce Yourself" on Piazza
- Growable Arrays (at start of class)
- Make progress on WarmUpAndStretching.
|
- Growable Arrays discussion
- Review of Asymptotic analysis and formal definition of Big O.
- Big-oh’s cousins, big-Omega and big-Theta
|
|
Warm Up and Stretching
|
| 1 |
3
Tue Sep 4
Details
|
- Continue reviewing Weiss Ch. 1–6; focus on §5.3
|
- Homework 1 Submit to HW1 drop box in Moodle. This and all other HW and programming assignments are due at 11:00 PM unless we specify otherwise for a particular assignment.
- Make progress on WarmUpAndStretching.
|
- MCSS Cubic and Quadratic Algorithms
|
|
Warm Up and Stretching
|
| 1 |
4
Thu Sep 6
Details
|
|
|
|
|
Stacks and Queues
|
| 2 |
5
Mon Sep 10
Details
|
- Finish review of Weiss Ch. 1–6, focus on ch. 6
|
- UML Diagram of Collections framework (from HW2)
|
- Abstract data types (ADTs)
- Review of basic data structures in the Java Collections Framework
|
|
Stacks and Queues
|
| 2 |
6
Tue Sep 11
Details
|
- Ch. 7.3 (review of recursion)
- Ch. 15-17 (List implementation (review); skim, but may help for assignment)
|
|
- Trees Intro
- Implementing a Binary Tree using recursive methods.
|
|
Stacks and Queues
|
| 2 |
7
Thu Sep 13
Details
|
|
|
- More recursive binary tree methods.
- Binary tree traversals
|
|
Doublets
|
| 3 |
8
Mon Sep 17
Details
|
|
- StacksAndQueues partner evaluation (on Moodle)
|
- Iterators: Simple and lazy ones
|
|
Doublets
|
| 3 |
9
Tue Sep 18
Details
|
- Study for Exam 1, take practice exam on Moodle
|
|
- Exam 1
Wednesday 9/19 7:00 - 9:00 PM Section 1, O257 Section 2, O259 Night exam. No class Tuesday to compensate.
|
|
Doublets
|
| 3 |
10
Thu Sep 20
Details
|
|
|
- Binary Search Tree (BST) methods: insert, remove, contains.
|
|
Binary Search Tree
|
| 4 |
11
Mon Sep 24
Details
|
|
|
- Size vs. Height in a binary tree
|
|
Binary Search Tree
|
| 4 |
12
Tue Sep 25
Details
|
|
|
- Need for trees that are height-balanced but not completely balanced
|
|
Binary Search Tree
|
| 4 |
13
Thu Sep 27
Details
|
|
|
- AVL Trees: How to find the node where rotation is needed
- Single and double rotations; effect on subtree height.
- Intro EditorTree and need for rank field
- Meet team
|
|
EditorTrees
|
| 5 |
14
Mon Oct 1
Details
|
- Re-write any tree methods you haven't yet mastered
|
|
- Student questions on EditorTree Requirements
- Practice with AVL Tree Rotations
- Exam 2a in class
|
|
EditorTrees
|
| 5 |
15
Tue Oct 2
Details
|
|
|
- Discuss usage of rank field
- EditorTrees work time with your team
|
|
EditorTrees
|
| 5 |
16
Thu Oct 4
Details
|
|
|
|
|
EditorTrees
|
| 6 |
17
Mon Oct 8
Details
|
|
- EditorTrees Milestone 1 partner feedback on Moodle
- Midterm course evaluation in Moodle
|
|
|
EditorTrees
|
| 6 |
18
Tue Oct 9
Details
|
|
|
|
|
EditorTrees
|
| 7 |
19
Mon Oct 15
Details
|
|
|
- Hash Table implementation
|
|
EditorTrees
|
| 7 |
20
Tue Oct 16
Details
|
|
|
- Priority Queues and Binary heaps
- Heaps work time
|
|
EditorTrees
|
| 7 |
21
Thu Oct 18
Details
|
|
|
- Heapsort
- Heapsort work time
|
|
EditorTrees
|
| 8 |
22
Mon Oct 22
Details
|
|
|
|
|
GraphSurfing
|
| 8 |
23
Tue Oct 23
Details
|
|
- EditorTrees team member performance evaluation survey (required; Thursday 11:00 PM)
|
- Exam 2
Wednesday 10/24 7:00 - 9:00 PM Section 1, O167 Section 2, O169 Night exam. No class Tuesday to compensate.
|
|
GraphSurfing
|
| 8 |
24
Thu Oct 25
Details
|
|
|
|
|
GraphSurfing
|
| 9 |
25
Mon Oct 29
Details
|
|
|
- Extended Binary Trees
- Intro to Recurrences
|
|
GraphSurfing
|
| 9 |
26
Tue Oct 30
Details
|
- § 7.5.2, 7.5.3
- § 8.1 – 8.5 (skip 8.4.1)
|
|
- Recurrences and Master Theorem
- Sorting review/overview
|
|
GraphSurfing
|
| 9 |
27
Thu Nov 1
Details
|
- § 8.6 – 8.7 (skim Average case analysis of Quicksort)
|
|
- Quicksort
- Quicksort average case analysis
|
|
GraphSurfing
|
| 10 |
28
Mon Nov 5
Details
|
|
|
- Quicksort improvements
- Lower bound for sorting algorithms.
- Radix sort
|
|
SortingRaces
|
| 10 |
29
Tue Nov 6
Details
|
|
|
- TBA
- Worktime for sorting assignment
|
|
SortingRaces
|
| 10 |
30
Thu Nov 8
Details
|
|
|
- Course evaluations
- Discussion of Final Exam
- Practice problems for final exam (no solutions posted, but can ask us)
|
|
SortingRaces
|
| 11 |
31
Mon Nov 12
Details
|
|
- Final exam review packet (not collected)
|
|
| |