Class Notes

Notes:

Course outline

The course outline requires the coverage of the following topics:
  1. Programming Methodology
    1. Specification
    2. Design
    3. Coding
    4. Testing
    5. Documentation
  2. User-defined Data Types
    1. Scalar Types
      1. Enumeratted Types.
      2. Sub Ranges
    2. Structured Types
      1. Character Strings
      2. Single and Multidimensional Arrays
      3. Records.
  3. Data Structures
    1. Lists
      1. Static Array Implementation
      2. Dynamic Array Implementations
      3. Linked List Implementations
    2. Stacks
    3. Queues
  4. Searching
    1. Sequential Search
    2. Binary Search
    3. Analysis of Searching Algorithm using Big-O Notation
  5. Sorting
    1. N-Squared Sort, Selection Sort
    2. External Sorting, Merging of Files.
  6. Recursion
    1. Examples of Recursive Algorithms.
    2. Recurion as a Programming Technique
    3. Cost of Recursion (Memory and Time Requirements)
    4. Efficiency Tradeoffs between Recursion and Iteration
  7. Abstract Data Types and Object Oriented Programming
    1. Attributes and Methods
    2. Encapsulation and Abstraction
    3. Introduction to UML and Object Oriented Programming