Mar 04, 2026  
GRCC Curriculum Database (2025-2026 Academic Year) 
    
GRCC Curriculum Database (2025-2026 Academic Year)
Add to Catalog (opens a new window)

CIS 228 - Algorithms and Data Structures


Description
This course introduces the basics of algorithms and data structures, including sorting, runtime complexity, lists, stacks, queues, hash tables, trees, and graphs. Students develop in-depth understanding of data structures, their representations, and role as the foundation in the development of computer algorithms.
Credit Hours: 3
Contact Hours: 3
Prerequisites/Other Requirements: CIS 123  (C or Higher) and CIS 117  (C or Higher)
English Prerequisite(s): None
Math Prerequisite(s): None
Course Corequisite(s): None
Academic Program Prerequisite: None
Consent to Enroll in Course: No Department Consent Required
Dual Enrollment Allowed?: Yes
Number of Times Course can be taken for credit: 1
Programs Where This Course is a Requirement:
None
General Education Requirement:
None
General Education Learner Outcomes (GELO):
NA
Course Learning Outcomes:
  1. Explain the relationship between data structures and algorithms. 
  2. Illustrate abstract data types and describe their most common pre-defined operations. 
  3. Classify algorithms based on efficiency, computational complexity, and worst-case runtime.
  4. Use Big-O Notation to perform algorithm analysis and derive worst-case runtime approximations. 
  5. Compare and contrast various sorting algorithms, such as Selection Sort, Insertion Sort, Shell Sort, Quicksort, and Merge sort. 
  6. Develop implementations of Abstract Data Types using Java, such as Lists, Stacks, Queues, and Hash Tables.
  7. Design Binary Search Trees in Java that contain algorithms for searching, inserting, removing, and inorder transversal. 
  8. Create graphs using vertices and edges to represent paths between nodes that describe algorithm implementations, such as breadth-first search, or depth-first search. 
  9. Create and/or organize data and information into meaningful patterns in order to interpret and draw inferences from it. 
  10. Use creativity and alternative thinking to brainstorm new ideas and possible solutions to problems or issues. 

Course Outline:
I. Introduction to Data Structures and Algorithms

II. Abstract Data Types

III. Algorithm Analysis and Big-O Notation

IV. Searching Algorithms

V. Sorting Algorithms

VI. Lists

VII. Stacks

VIII. Queues

IX. Hash Tables

X. Trees

XI. Introduction to Graphs

XII. Advanced Topics in Graphs


Approved for Online and Hybrid Delivery?:
Yes
Instructional Strategies:
Lecture: 30-60%

Facilitated discussion: 0-20%

Group work: 0-10%

Applied work: 10-40%
Mandatory Course Components:
None
Equivalent Courses:
None


Name of Industry Recognize Credentials: None

Course-Specific Placement Test: None
Mandatory Department Assessment Measures:
None
Course Type:
Elective- Offering designed to expand learning opportunities for degree seeking students. May or may not be required for students in a specific GRCC program.
Course Format:
Lecture - 1:1
Total Lecture Hours Per Week: 3
People Soft Course ID Number: 105057
Course CIP Code: 11.9999
Maximum Course Enrollment: 24
School: School of STEM
Department: Computer Information Systems
Discipline: CIS
First Term Valid: Fall 2021 (8/1/2021)
1st Catalog Year: 2021-2022
Name of Course Author:
Jonnathan Resendiz
Faculty Credential Requirements:
Master’s Degree (GRCC general requirement), 18 graduate credit hours in discipline being taught (HLC Requirement), Other (list below)
Faculty Credential Requirement Details:
The instructor must possess a Master's Degree in Computer Science; at least five years of programming experience that includes object-oriented programing; and the ability to clearly explain the topics covered in the course.
Course Review & Revision Year: 2025-2026



Add to Catalog (opens a new window)