Chapter 0 Preface¶
Chapter 1 Designing and specifying data structures¶
Chapter 2 Object Oriented Programming¶
Chapter 3 List Interface & Array based Lists¶
Chapter 4 Pointers in Java (Not C++! See course notes)¶
- 4.1. Pointers Chapter Introduction
- 4.2. Basic References Part 1
- 4.3. Basic References Part 2
- 4.4. Pointers Syntax
- 4.3. Local Memory
- 4.4. Heap Memory
- 4.7. Link Nodes
- 4.8. Link Nodes Practice Exercises
- 4.9. Pointers Concepts Summary
- 4.6. Pointers Exercises
Chapter 5 Pointers in C++¶
- 5.1. Pointers Chapter Introduction
- 5.2. Basic Pointers
- 5.2.1. What is a pointer?
- 5.2.2. Pointer Reference and Dereference
- 5.2.3. Pointer Assignment
- 5.2.4. Bad Pointers
- 5.2.5. Syntax
- 5.2.6. Example Pointer Code
- 5.2.7. Pointer Rules Summary
- 5.2.8. How Do Pointers Work In Java?
- 5.2.9. How Are Pointers Implemented In The Machine?
- 5.2.10. The Term 'Reference'
- 5.2.11. Why Are Bad Pointer Bugs So Common?
- 5.3. Local Memory
- 5.4. Heap Memory
- 5.5. Reference Parameters
- 5.6. Pointers Exercises
Chapter 6 Stacks¶
Chapter 7 Recursion¶
- 7.1. Introduction
- 7.2. Writing a recursive function
- 7.3. Code Completion Practice Exercises
- 7.3.1. Introduction
- 7.3.2. Recursion Programming Exercise: Largest
- 7.3.3. Recursion Programming Exercise: Multiply
- 7.3.4. Recursion Programming Exercise: GCD
- 7.3.5. Recursion Programming Exercise: log
- 7.3.6. Recursion Programming Exercise: Cummulative Sum
- 7.3.7. Recursion Programming Exercise: Add odd positions
- 7.3.8. Recursion Programming Exercise: Sum Of the Digits
- 7.3.9. Recursion Programming Exercise: Count Characters
- 7.4. Writing More Sophisticated Recursive Functions
- 7.5. Harder Code Completion Practice Exercises
- 7.6. Writing Practice Exercises
- 7.7. Tracing Recursive Code
- 7.8. Tracing Practice Exercises
- 7.9. Summary Exercises