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
3 OO Review Skim Appendix A1-A8, A10-A12, and B1
2 1 Introduction and JavaFX Basics JavaFX Overview
2 JavaFX and Event Handling  
3 Event Handling and Inner Classes Slides
3 1 FXML - FX Markup Language FXML Details Slides
2 Catch-up  
3 Functional Programming  
4 1 Functional Programming continued Slides
2 Algorithm Efficiency and Big-O 2.1
3 ArrayLists 2.2-2.4
5 1 ArrayLists cont... 2.2-2.4
2 Review  
3 Exam I    
6 1 Testing 2.5-2.6
2 Linked Lists 2.5-2.6
3 Linked Lists cont... 2.7-2.10
7 1 Iterators 3 Slides
2 Stacks and Queues 4.1-4.4
3 CircularQueues 4.5-4.7
8 1 Binary Search  
2 Recursion 5.1-5.2
3 Recursion continued 5.3-5.5
Spring Break
9 1 Binary Trees and Binary Search Trees 6.3-6.5
2 Binary Search Trees 6.1-6.2
3 Trees and Tree Traversals  
10 1 Catch-up  
2 Review    
3 Exam II    
11 1 Sets and Maps 7.1-7.2
2 Hash Tables 7.3-7.4
3 Hashing and Collision Handling 7.5-7.6
12 1 Selection and Insertion Sort 8.1-8.3
2 Shell and Merge Sort 8.4-8.6
3 TimSort and QuickSort 8.7-8.9
13 1 Asymptotic Time Complexity Revisited  
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 How to Pick a Data Structure  
2 Review  
3 Review  
16 Common Final Exam, (tentative) 11am-1pm, Thursday, May 15, 2025