SBE 201 - Computer Systems II - Data Structure in C

Semester: 
Spring

Course Description

The study of data structures is core to software development providing the techniques and tools necessary to construct efficient solutions to problems. This course presents the fundamentals of data structures (both static and dynamic) and algorithms for manipulating them. Data structures for storing information in tables, lists, trees, maps, graphs, queues and stacks will be covered. In this course, students will be introduced to some basic principles of software engineering: good programming practice for "long-life" software.

Course Learning Objectives

  1. Acquire a firm knowledge of data structures and practical experience using their implementation.
  2. Study the concept of abstract data types (ADTs) and the most commonly used ADTs in software development
  3. Learn how data may be structured and instructions sequenced in algorithms and programs as well as the relationship between appropriate data and control structures and tasks from the “real world”.
  4. Understand and contrast the operation of common data structures in terms of time complexity, space utilization, and the abstract data types they implement.
  5. Learn how to assess how the choice of data structures and algorithm design methods affects the performance of programs.
  6. Learn how to choose the appropriate data structure and algorithm design method for a specified application.
  7. Practice tools, including analytical skills that will enable students to create programming solutions for real world problems.

 

Related materials