Week |
Session |
Preparation |
Due |
Topics |
Resources |
Major Programs |
0 |
1
Thu Sep 3
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 7
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 completion and discussion
- Review of Asymptotic analysis and formal definition of Big O.
- Big-oh’s cousins, big-Omega and big-Theta
- Limits and asymptotic behavior
|
|
Warm Up and Stretching
|
1 |
3
Tue Sep 8
Details
|
- Continue reviewing Weiss Ch. 1–6; focus on §5.3
|
- Homework 1 Submit to drop box in Moodle.
- Make progress on WarmUpAndStretching.
|
- MCSS Cubic and Quadratic Algorithms
|
|
Warm Up and Stretching
|
1 |
4
Thu Sep 10
Details
|
|
|
|
|
Stacks and Queues
|
2 |
5
Mon Sep 14
Details
|
- Finish review of Weiss Ch. 1–6, focus on ch. 6
|
|
- Abstract data types (ADTs)
- Review of basic data structures in the Java Collections Framework
|
|
Stacks and Queues
|
2 |
6
Tue Sep 15
Details
|
- Ch. 7.3 (review of recursion)
- Ch. 15-17 (should be mostly review)
|
|
- Trees Intro
- Implementing a Binary Tree using recursive methods.
|
|
Stacks and Queues
|
2 |
7
Thu Sep 17
Details
|
|
|
- More recursive binary tree methods.
- Binary tree traversals and iterators
|
|
Binary Search Tree
|
3 |
8
Mon Sep 21
Details
|
|
- StacksAndQueues partner evaluation (on Moodle)
|
- Lazy iterators
- BST Insertion
|
|
Binary Search Tree
|
3 |
9
Tue Sep 22
Details
|
|
|
- Binary Search Tree (BST) methods: insert, remove, contains.
|
|
Binary Search Tree
|
3 |
10
Thu Sep 24
Details
|
|
|
- Size vs. Height in a binary tree
|
|
HardyPartTwo
|
4 |
11
Mon Sep 28
Details
|
|
|
- Exam 1
Monday 7:00 - 9:00 PM Section 1, Olin 267 Section 2, Olin 269 Night exam. No class today to compensate.
|
|
HardyPartTwo
|
4 |
12
Tue Sep 29
Details
|
|
|
- Need for trees that are height-balanced but not completely balanced
|
|
HardyPartTwo
|
4 |
13
Thu Oct 1
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 5
Details
|
- § 19.2
- Re-write any tree methods you haven't yet mastered
|
- HardyPartTwo partner evals
|
- Student questions on EditorTree Requirements
- Practice with AVL Tree Rotations
- Exam 2a in class
|
|
EditorTrees
|
5 |
15
Tue Oct 6
Details
|
|
|
- Practice with AVL Tree Rotations
- EditorTrees work time with your team
|
|
EditorTrees
|
6 |
16
Mon Oct 12
Details
|
|
- EditorTrees Milestone 1 (grace period until Tuesday 11:00 pm)
- EditorTrees Milestone 1 partner feedback on Moodle (optional)
|
- EditorTrees workday (Dr. Boutell out of town)
|
|
EditorTrees
|
6 |
17
Tue Oct 13
Details
|
|
|
|
|
EditorTrees
|
6 |
18
Thu Oct 15
Details
|
|
|
|
|
EditorTrees
|
7 |
19
Mon Oct 19
Details
|
|
|
- Hash Table implementation
|
|
EditorTrees
|
7 |
20
Tue Oct 20
Details
|
|
|
- Exam 2
Tuesday 7:00 - 9:00 PM Section 1, Olin 267 Section 2, Olin 269 Night exam. No class today to compensate.
|
|
EditorTrees
|
7 |
21
Thu Oct 22
Details
|
|
|
- Extended Binary Trees
- Intro to Recurrences
|
|
EditorTrees
|
8 |
22
Mon Oct 26
Details
|
- § 7.5.2, 7.5.3
- § 8.1 – 8.5 (skip 8.4.1)
|
|
- Recurrences and Master Theorem
- Sorting review/overview
|
|
Doublets
|
8 |
23
Tue Oct 27
Details
|
- § 8.6 – 8.7 (skim Average case analysis of Quicksort)
|
- EditorTrees team member performance evaluation survey (required; Weds 11:00 PM)
|
- Quicksort
- Quicksort average case analysis
|
|
Doublets
|
8 |
24
Thu Oct 29
Details
|
|
|
- Quicksort improvements
- Lower bound for sorting algorithms.
- Radix sort
|
|
Doublets
|
9 |
25
Mon Nov 2
Details
|
|
|
|
|
2D Trees
|
9 |
26
Tue Nov 3
Details
|
|
- Doublets partner evaluation
|
- Priority Queues and Binary heaps
- Heaps work time
|
|
2D Trees
|
9 |
27
Thu Nov 5
Details
|
|
|
- Heapsort
- Heapsort work time
|
|
2D Trees
|
10 |
28
Mon Nov 9
Details
|
|
|
|
|
SortingRaces
|
10 |
29
Tue Nov 10
Details
|
|
|
- Worktime for sorting assignment
|
|
SortingRaces
|
10 |
30
Thu Nov 12
Details
|
|
|
- Course evaluations
- Discussion of Final Exam
- Practice problems for final exam (no solutions posted, but can ask us)
|
|
SortingRaces
|
11 |
31
Mon Nov 16
Details
|
|
- Final exam review packet (not collected)
|
- Final Exam
Wednesday 8:00 AM - 12:00 PM Section 1, Olin 267 Section 2, Olin 269
|
| |