Department:Mathematics & Computer Science

Department:Mathematics & Computer Science

Department:Mathematics & Computer Science

Discipline:Computer Science

Subject Code: CPSCourse #: 162

Course Title: Computer Science II


FORM 335

Course Form 335 must be updated at least every five years per AP 765 to include, at a minimum, the following elements. [§335.2]

1.Digital Description [§335.2] (Insert the new/revised digital description below):

Credit hours:3.0

Lecture hours: 3.0

Lab hours:0.0

Approved Online/Blended Face-to-Face Instruction Ratios:

[__] 25/75% [__] 33/67% [__] 50/50% [__] 67/33% [__] 75/25%

(Note: The first number indicates the percentage of online instruction. The second number indicates the percentage of in-class instruction.)

2.Maximum Enrollment (Insert new/revised maximum enrollments below):

In-Class Instruction: 20

Lab Instruction:

(It is assumed that maximum enrollments for blended courses are the same as those identified for In-Class instruction. Maximum enrollments for Virtual Learning courses are to be 75% of In-Class instruction, as per the SGP on Maximum Class Size):

3.Catalog Description [§335.2] (Insert the new/revised description in space below):

A continuation of CPS 161 that focuses on logical data structures and various physical implementations of the structures. Students are required to design and code several programs in such topics as stacks, queues, linked lists, recursion, string processing, hashing, trees, and graphs.

Minimum Grade Required

4.Prerequisites [§335.2]: CPS 161C



5.Learning Outcomes [§335.2]

[These outcomes are necessary to enable students to attain the essential

knowledge and skills embodied in the program’s educational objectives.]

Upon successful completion of the course the student will be able to:

  • Write computer programs in the C++ language that:
  • incorporates good programming style
  • has efficient procedural and class organization
  • displays effective debugging and testing practices
  • Utilize alternate physical data structures, including Arrays and Linked Lists, to represent the same logical data structures
  • Design and code computer programs that use the appropriate data structures, including:
  • Stacks
  • Queues
  • Trees
  • Graphs
  • Apply the data manipulation techniques of:
  • Searching
  • Sorting
  • String Manipulation
  • Recursion
  • Analyze the comparative efficiency of different algorithms using Big O Notation

6.Planned Sequence of Instruction [§335.2]

[These must be designed to help students achieve the learning outcomes.]

  • Overview of C++ Object Oriented Programming (OOP): Classes, Object Instantiation, Function Overloading, Access Specifications
  • Stacks and Queues: Array Implementations, Linked List Implementations
  • OOP Aspects: Simple Inheritance, Exception Handling, Templates, Standard Template Library (STL)
  • STL Implementation of Stacks and Queues
  • Recursion: Shell Sort (recursive), Quicksort
  • Doubly-Linked Lists
  • Searching/Sorting: Big-O Notation, Heapsort
  • Tables and Information Retrieval: Hashing
  • Binary Trees: Binary Search Trees, Adelson-Velsky & Landis (AVL) Trees
  • Multiway Trees: Orchards, B-Trees
  • Graphs: Adjacency Lists, Graph Traversal

7.Assessment of Student Learning [§335.44]

[Methods of assessment should be appropriate for Learning Outcomes listed above.]

Assessment of student learning outcomes for the course, as required by the Shared Governance Policy – Assessing Institutional Effectiveness, is part of regular curriculum maintenance and/or improvement. The specific plan has been determined by the pertinent faculty involved and is maintained in the College’s assessment management system.

Student assessment includes tests, projects, and a comprehensive final exam. Other forms of assessment may include, but are not limited to, the following: class participation, graded assignments, portfolios, and/or quizzes. All assessment instruments cover course competencies and are on file in the Mathematics and Computer Science Department.

8.List of Texts, References, Selected Library Resources or other Learning Materials (code each item based on instructional use) [§335.2]: C-Lecture/Laboratory, A-Lecture, B-Laboratory, LC-Lecture/Clinical, CLN-Clinical, I-Online, BL-Blended, D-Independent Study, P-Private Lessons, E-Internship, F-Cooperative Work-Study, FE-Field Experience. [These resources must be easily accessible to students.]

A – ADT’s, Data Structures, and Problem Solving with C++, latest edition by Larry

Nyhoff; Pearson

1. Discipline Faculty Proponent: Dan Fahringer / 10/8/14
2. Curriculum Manager & College Catalog Editor: Erika Steenland / 3/31/15
3. Department Chairperson (Discipline Approval): Elizabeth Dunn / 4/1/15

This course meets all reimbursement requirements of Chapter 335, subchapters A/B.

This course was developed, approved, and offered in accordance with the policies, standards, guidelines, and practices established by the College. It is consistent with the College’s mission.

If the course described here is a transfer course, it is comparable to similar courses generally accepted for transfer accredited four-year colleges and universities.

4. Associate Provost: Kathleen T. Doherty / 4/2/15
5. Provost & VP, Academic Affairs: Cynthia Doherty, Ph.D. / 4/3/15

9.Original Date of course approval by the college: 198320

10.Date(s) of subsequent reviews [Indicate change: Learning Outcomes; textbook(s)]:

1985 – Periodic Review

1987 – Periodic Review

1989 – Text Change

1995 – Text Change

1995 – Change to Form 335

2001 – Catalog Description change

2002 – Periodic Review

10/03 – Text Change

10/06 – Catalog Description change

1/08 – Learning Outcomes

2/09 – Catalog Description, Learning Activities, Text Change

10/09 – Text Change

10/14 – Learning Outcomes, Sequence of Instruction to align to the 14 + 1 semester, Assessment of Student Learning – SUM 15

06/03/15 – Added new blended ratio format - nb


Form Template Reviewed & Updated: 10/26/07; 1/11/08; 1/16/09; 7/14/09; 7/31/12; 7/30/13; 8/26/13; 1/31/14; 8/18/14