Discipline: Computer Information Systems

Riverside Community College District
Integrated Course Outline of Record

Computer Information Systems 17C
CIS-17C : C++ Programming: Data Structures
College:
Lecture Hours: 54.00
Lab Hours: 18.00
Units: 3.00
Pass/No Pass
Letter Grade
Course Description
Prerequisite: None
Advisory: CIS-17A or CSC-17A
Course Credit Recommendation: Degree Credit

This course offers a thorough presentation of the essential principles and practices of data structures using the C++ programming language. The course emphasizes abstract data types, software engineering principles, lists, stacks, queues, trees, graphs, and the comparative analysis of algorithms. 54 hours lecture and 18 hours laboratory. (TBA option) (Letter Grade, or Pass/No Pass option.)
Short Description for Class Schedule
This course presents the essential principles of data structures for the development of computer programs using C++. (Same as CSC-17C)
Entrance Skills:
Before entering the course, students should be able to demonstrate the following skills:
  1. Compose, compile and run C++ Object oriented code
  2. Analyze and understand the Object-Oriented C++ environment.
  3. Demonstrate the use of specialized terminology, directives, and features of the C++ language.
  4. Apply practical and theoretical gaming, business, scientific, and mathematical concepts in writing and executing programs in the C++ language using Object-Oriented programming methodology.
  5. Demonstrate specified problem-solving and software design skills using the C++ language
Student Learning Outcomes:
Upon successful completion of the course, students should be able to demonstrate the following skills:
  1. Analyze and understand the use of data structures in the development of algorithms.

  2. Design and create C++ programs using stacks, trees, queues, lists and trees.

  3. Apply practical business processes, theoretical scientific, and mathematical concepts to write and execute computer programs in the C++ language using data structures.

General Education Outcomes:
Course Content:
  1. Software Engineering
  2. Introduction to Data Structures and Abstract Data Types
  3. Stacks
  4. Queues
  5. Templates and Standard Containers
  6. Recursion
  7. Algorithm Analysis
  8. Lists
  9. Trees
  10. Sorting
  11. Searching
  12. Graphs and Digraphs
  13. Storage Management
Methods of Instruction:
Methods of instruction used to achieve student learning outcomes may include, but are not limited to, the following activities:
  • Class lectures/discussions/demonstrations in order to understand the use of data structures in the development of algorithms.
  • Pair and small group activities/discussion in order to apply concepts to write and execute computer programs in the C++ language using data structures.
  • Class exercises to analyze application requirements to identify data structures.
  • Reports and papers.
  • Handouts to document the various C++ library functions and built-in template data structures.
  • Individual programming exercises resulting in an in-class critique of the program to highlight student progress in programming data structures.
  • Guest lecturers to call attention to the real world application of data structures in the C++ language.
Methods of Evaluation:
Students will be evaluated for progress in and/or mastery of student learning outcomes using methods of evaluation which may include, but are not limited to, the following activities:
  • Programming exercises with in class oral reports to demonstrate program performance.
  • Written reports/presentations of programming exercises.
  • Quizzes/examinations to assess student progress in the understanding of C++ data structures.
  • Computer programming assignments as homework and in class exercises to demonstrate development of understanding of class structures and usage.
  • In-class programming exercises to demonstrate team programming dynamics.
  • Final examination designed to assess students’ mastery of the essential concepts of data structures and how to use them effectively in C++ programs.
Sample Assignments:
Outside-of-Class Reading Assignments
  • The primary assignments for this course involve the creation of programs using C++.
  • To support that, students will be assigned textbook reading and/or other resource reading that covers programming concepts and demonstrates usage of C++.
Outside-of-Class Writing Assignments
  • Assignments for this course involve writing C++ programming statements to form complete programs that carry out specific tasks.
  • Students will also be asked to document their work with written explanations that clarify their programming code.
Other Outside-of-Class Assignments
  • The primary assignments for this course involve the creation of programs using C++.
Course Materials:
All materials used in this course will be periodically reviewed to ensure that they are appropriate for college level instruction. Possible texts include the following:
  • Deitel, H. & Deitel P., . C++ How to Program. 8th Prentice Hall, 2011.
  • Malik, D. S.. Data Structures Using C++. 2nd Thompson Course Technology, 2009.
Codes/Dates:
CB05 MOV Transfer Status: Transfers to Both UC/CSU (A)
CB05 NOR Transfer Status: Transfers to Both UC/CSU (A)
CB05 RIV Transfer Status: Transfers to Both UC/CSU (A)
Board of Trustees Approval Date: 01/24/2012
COR Rev Date: 01/24/2012