Class Notes
Notes:
The order of topics covered or dates specified are subject to change. Any changes will be discussed in class.
- Functions
- A review of files
- Scope and Lifetime
- Chapter 10, basic data types.
- Implementing code in several files
- Chapter 10, basic data types again.
- Chapter 11, Arrays
- Chapter 12, Classes
- Chapter 14, Dynamic Memory and Linked Lists
- Chapter 18, Recursion.
Course Outline:
The course outline requires the coverage of the following topics:
- Programming Methodology
- Specification
- Design ✓
- Coding ✓
- Testing ✓
- Documentation ✓
- User-defined Data Types
- Scalar Types ✓
- Enumerated Types. ✓
- Sub Ranges ?
- Structured Types
- Character Strings ✓
- One Dimensional Arrays ✓
- Multidimensional Array
- Records. ✓
- Data Structures
- Lists
- Static Array Implementation
- Dynamic Array Implementations
- Linked List Implementations
- Stacks
- Queues
- Searching
- Sequential Search ✓
- Binary Search ✓
- Analysis of Searching Algorithm using Big-O Notation ✓
- Sorting
- N-Squared Sort, Selection Sort ✓
- External Sorting, Merging of Files.
- Recursion
- Examples of Recursive Algorithms.
- Recursion as a Programming Technique
- Cost of Recursion (Memory and Time Requirements)
- Efficiency Tradeoffs between Recursion and Iteration
- Abstract Data Types and Object Oriented Programming
- Attributes and Methods
- Encapsulation and Abstraction
- Introduction to UML and Object Oriented Programming