The following is the tentative list of topics by date. Suggested reading is in parantheses.
DAaPS is the primary text, "Data Abstraction & Problem Solving in Java.
JBD is "Java by Dissection."
C4JP is "C for Java Programmers: A Primer"
- Week 0 (9/22)
- recursion (DAaPS 3.1)
- Week 1 (9/26-9/30)
- factorial, binomial, Pascal's triangle, binary search, towers of hanoi (DAaPS 3)
- Quiz1 Thursday 9/29
- Week 2 (10/3-10/7)
- merge sort, ADTs (DAaPS 4.1, 4.2), array implementation (DAaPS 4.3), pre/post (DAaPS 2.1)
- inheritance, overloading, overriding (DAaPS 1, 9.1, JBD 4.12, 7)
- Java exceptions, interfaces (DAaPS 1.6, 4.3, JBD 7.8, 11.1)
- Week 3 (10/10-10/14)
- Quiz 2 Tuesday 10/11
- C pointers and array (C4JP 2.2, 3)
- Linked Lists (DAaPS 5, JBD 12.1-12.4)
- Week 4 (10/17-10/21)
- Linked Lists (DAaPS 5)
- Stacks (DAaPS 7)
- Week 5 (10/24-10/28)
- Quiz 3 Tuesday 10/25
- Queue implmented with an array (DAaPS 8)
- Week 6 (10/31-11/4)
- efficiency: best/worst/average (DAaPS 10)
- stack vs heap allocation
- Strings in C (C4JP 4)
- malloc, calloc, and free in C (C4JP 3.4, 5.4)
- Week 7 (11/7-11/11)
- Quiz 4 Tuesday 11/8
- Big-O, Big-Theata, Big-Omega (DAaPS 10.1)
- sorting (DAaPS 10.2)
- Queue of Object
- Week 8 (11/14-11/18)
- Binary search tree (DAaPS 11.1-11.3), hash table (DAaPS 13.2), dictionary
- Week 9 (11/21-11/25)
- Quiz 5 Tuesday 11/22
- Hashing, load factor (DAaPS 13.2)
- Dictionary in C, BST in C, typedef (C4JP 5.1)
- Week 10 (11/28-12/2)
- dictionary, hashing, bitwise C operators