CS 140-A: Principles of Computer Programming II

Quarter:     Winter 98 
Room:        2145 NH
Time:        12:00  - 12:50 PM M-F

Course Objective:



Course Description:

A continuation of CS 139 with emphasis on elementary data
structures and advanced Pascal.
Prerequisite: CS 139.

Software and Tools Used to Support Class:



Required Materials:


            

Topics Covered:

 Course Outline: 
I. Programming Principles
	A. Style
	B. Documentation
	C. Modularity
	D. Testing
	E. Maintenance
	F. Algorithm Development

II. Built-in Data Structures 
	A. One-dimensional Arrays
	B. Two-dimensional Arrays
	C. Records
	D. Packed Structures

III. Stacks 
	A. User-defined Data Structures
	B. Operations on stacks
	C. Stack in an Array

IV. Queues
	A. Operations on Queues
	B. Implementation of Queues

V. Linked Lists
	A. List representations
	B. Rationale for Linked Lists 

VI. Pointer Variables
	A. Rationale for Dynamic Allocation

VII. Recursion 


VIII.Binary Search Trees
	A. Building a Binary Tree
	B. Searching a Binary Tree
	C. Deleting from a Binary Tree

IX. Sorting Algorithms and Efficiency Considerations
	A. Bubble Sort
	B. Selection Sort
	C. Insert Sort
	D. Quick Sort
	E. Heap Sort

X. Searching
	A. Sequential Searching
	B. Key Ordering
	C. Binary Searching


Grading Policies:

        The grade for the course will be assigned 
	based on the following percentages:
  • 3 - 4 Tests: 70 - 80% If you miss a test, the final score will be assigned for that test.
  • 5 - 8 assignments: 20 - 30% No late assignments.

Instructor:

             Said C. Fares
             Office:                         2132  Nevins Hall 
             Traditional Office Hours:       10:00 AM - 11:00 AM Monday-Friday
 					     or by appointment
             Electronic Office Hours:        Any day, any time
             E-mail:                         sfares@valdosta.edu
             Phone:                          (912) 333-5780

Last update January 5,1998.