Course Oultine: TX, Midland Senior High School

By: Higher Education

Abstract: CS 3750: AP Computer Science 2

Midland Senior High School

906 West Illinois

Midland, TX 79701

AP Computer Science II - Course Number 3750

This course will follow the approved College Board curriculum for the AP Computer Science I curriculum.

Resources For Instruction/Unit Activities:

Deitel, H. M., et. al. C++ How to Program. Englewood: Prentice Hall, 1994.

Jamsa, Kris. Success With C++. Las Vegas: Jamsa Press, 1992. (out of adoption)

Lafore, Robert. Object-Oriented Programming in Turbo C++. Emeryville: Waite Group Press, 1991.

Lambert, Kenneth A., et. al. Fundamentals of C++ Understanding Programming and Problem Solving. Cincinnati: South-Western Educational Publishing, 1998.

Litvin, Maria, et. al. C++ for You ++ AP Edition. Andover, Skylight Publishing, 1998.

Matsuoka, Cary. Institute of Computer Technology, Curriculum Development Project for C++, (Institute of Computer Technology, 589 W. Fremont Avenue, Sunnyvale, California 94087), 1998.

Mercer, Rick. Computing Fundamentals with C++. Wilsonville: Franklin, Beedle and Associates Incorporated, 1995.

Instructor

Michael Landrum, mlandrum@esc18.net

  • Throughout the year students will use the Internet for research into computer science issues.
  • Additionally, students will be given instruction in certain Internet specific skills including HTML and JavaScripting
  • Students will use graphics throughout the year as enrichment.
  • Evaluation throughout the year will be through group assignments, written exercises, programming projects, and demonstrations to illustrate the concepts covered.

    Topic List/Time Line

    Semester I

      I. Single Dimension Arrays (Vector) and Boolean Algebra/Loops (3 week)

      A. Switch

      B. If .. Else

      C. Loops

      D. Assertions/preconditions/post conditions/invariants

      E. Abstract Data Types

      F. List Processing

      1) Traversal

      a) Printing

      b) Searching (Binary, Sequential)

      2) Insert

      3) Delete

      4) Sorting

      G. Introduction of Header Classes

      II. Two-Dimensional Arrays (Matrix) (1 week)

      A. Processing

      III. Structs, Binary Files, and Software Engineering (3 weeks)

      A. Nested structures

      B. Variation of structure usage

      C. StringType

      1) Psychiatrist Case Study

      D. Sets

      IV. Math Unit (using random numbers) (3 week)

      A. Pi approximation

      B. Monte Carlo Method of Approximating Pi and √2

      C. Binary Search for approximating square roots

      D. Newton-Raphson method of finding zeros of a function

      E. Probabilities with dice

      F. Raise to a power

      V. Graphics Unit (3 weeks)

      A. Basic graphics commands

      B. Lottery Case study

      VI. Stacks, Queues(array implementation) (2 weeks)

      A. Stacks

      1) General description

      2) Array definition

      3) Operations

      a) pop

      b) push

      c) emptystack

      d) fullstack

      e) createstack

      B. Queues

      1) General description

      2) Array definition

      3) Operations

      a) dequeue

      b) enqueue

      c) fullqueue

      d) emptyqueue

      e) createqueue

      VII. Recursion (3 week)

      VIII. Dynamic Data Structures (2 weeks)

      A. Definition of dynamic vs. static

      B. Introduction to Linked Lists

    AP Computer Science II

    Topic List/Time Line

    Semester 2

      IX. Linked Lists (4 weeks)

      A. Singly Linked lists

      B. Doubly linked lists

      C. Circular lists

      D. Operations on linked lists

      1) Stacks, Queues

      2) Traversal

      3) Insertions/Deletions

      X. Trees (3 weeks)

      A. Vocabulary

      B. General Trees

      C. Binary Search Tree

      D. Algorithms

      1) traversals - preorder, inorder, postorder

      2) insertions

      3) deletions

      4) tree operations

      a) count leaves

      b) count nodes

      c) count parents

      d) count children

      e) count parents

      f) sum tree

      XI. Sorting (2 weeks)

      A. Evaluate 14 sorts (quadratic, n^1.5, n log n sorts)

      B. Sorting Algorithms

      1) Bubble

      2) Selection

      3) Insertion

      4) Shell

      5) Quick

      6) Heap

      7) Recursive Merge

      C. Big O efficiency

      XII. Searching (3 weeks)

      1) Binary

      2) Sequential

      3) Hashing

      XIII. AP Case Study (3 weeks)

      {use the current case study provided by The College Board}

      XIV. AP Review and Final Project (4 weeks)


Server Response from: ETNASC04