Apr 28, 2024  
2020-2021 Catalog 
    
2020-2021 Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

SDEV 333 - Data Structures

Credits: 5
Introduces algorithmic thinking and data structures, including lists, stacks, queues, trees, hash tables, and heaps. Focus on data structure and algorithm implementation with integrated coverage of theory: logic, sets and set operations, functions. Previously IT 333.

Prerequisite: Instructor’s permission.

Course Outcomes:
Students who successfully complete this class will be able to:

  1. Develop a list, stack or queue data structure based on linked lists or static arrays.
  2. Develop a set or map data structure based on hash tables or binary search trees and implement basic set operations.
  3. Develop a binary search tree and implement pre-, post-, and in-order traversals.
  4. Demonstrate an understanding of self-balancing routines in a balanced binary search tree.
  5. Develop a priority queue using a binary heap implementation.

Program Outcomes
  1. Develop stable, robust, secure, and efficient code following best practices in database design and software construction.
  2. Communicate with technical and non-technical project stakeholders, and within project teams.
  3. Perform software quality assurance activities throughout the entire software lifecycle.
  4. Write technical documentation to support software lifecycle activities.


College-wide Outcomes
  • Critical Thinking - Critical thinking finds expression in all disciplines and everyday life. It is characterized by an ability to reflect upon thinking patterns, including the role of emotions on thoughts, and to rigorously assess the quality of thought through its work products. Critical thinkers routinely evaluate thinking processes and alter them, as necessary, to facilitate an improvement in their thinking and potentially foster certain dispositions or intellectual traits over time.
  • Quantitative and Symbolic Reasoning - Quantitative Reasoning encompasses abilities necessary for a student to become literate in today’s technological world. Quantitative reasoning begins with basic skills and extends to problem solving.



Add to Portfolio (opens a new window)