Tentative Schedule

Week Day Topics Reading Recordings
1 1 No Class - Martin Luther King, Jr. Day  
2 Introduction and OO Review 1.1-1.7 Jones Taylor
3 OO Review Skim Appendix A1-A8, A10-A12, and B1 Jones Taylor
2 1 Introduction and JavaFX Basics JavaFX Overview Jones Taylor
2 JavaFX and Event Handling   Jones Taylor
Taylor Lab Feedback
3 Event Handling and Inner Classes Slides Jones Taylor
3 1 FXML - FX Markup Language FXML Details Slides Jones Taylor
2 Catch-up   Jones Taylor
3 Functional Programming   Jones Taylor
4 1 Functional Programming continued Slides Jones Taylor
2 Algorithm Efficiency and Big-O 2.1 Jones Taylor
3 ArrayLists 2.2-2.4 Jones Taylor
5 1 ArrayLists cont... 2.2-2.4 Jones Taylor
2 Review   Jones Taylor
3 Exam I   Taylor
6 1 Linked Lists 2.5-2.6 Jones Taylor
2 Linked Lists cont... 2.5-2.6 Jones Taylor
3 Iterators 2.7-2.10 Jones Taylor
7 1 Testing 3 Slides Jones Taylor
2 Stacks and Queues 4.1-4.4 Jones Taylor
3 CircularQueues 4.5-4.7 Jones Taylor
8 1 Binary Search   Jones Taylor
2 Recursion 5.1-5.2 Jones Taylor
3 Recursion continued 5.3-5.5 Taylor
Spring Break
9 1 Binary Trees and Binary Search Trees 6.3-6.5 Jones Taylor
2 Binary Search Trees 6.1-6.2 Jones Taylor
3 Trees and Tree Traversals   Jones Taylor
10 1 Catch-up   Taylor
2 Review    
3 Exam II    
11 1 Sets and Maps 7.1-7.2 Taylor
2 Hash Tables 7.3-7.4 Taylor
3 Hashing and Collision Handling 7.5-7.6 Taylor
12 1 Selection and Insertion Sort 8.1-8.3 Taylor
2 Shell and Merge Sort 8.4-8.6 Taylor
3 TimSort and QuickSort 8.7-8.9 Taylor
13 1 Asymptotic Time Complexity Revisited   Taylor
2 Asymptotic Space Complexity    
3 Shallow/Deep copies and Cloning    
14 1 Tree Rotations, AVL Trees 9.1-9.2  
2 Red-Black Trees 9.3  
3 More Trees    
15 1 Catch-up    
2 Review    
3 How to Pick a Data Structure    
16 Common Final Exam, 11am-1pm, Thursday, May 9, 2024