Skip to main content

ICS 240 Introduction to Data Structures

This course provides basic introduction to data structures and algorithms and emphasizes the relationship between algorithms and programming. Students will learn intermediate object-oriented design, programming, testing and debugging. Topics include inheritance, polymorphism, algorithm complexity, generic programming, linked list, stack, queue, recursion, trees, hashing, searching, and sorting.

Prerequisites

Special information

First day attendance is mandatory.
Note: This course uses the Java language. Students are responsible to both be aware of and abide by prerequisites for ICS courses for which they enroll, and will be administratively dropped from a course if they have not met prerequisites.
4 Undergraduate credits

Effective August 17, 2014 to present

Learning outcomes

General

  • Understanding algorithms, object-oriented programming, and gain programming experience in Java.
  • Identify appropriate use of and implement statically allocated data structures.
  • Identify appropriate use of and implement dynamically allocated data structures.
  • Analyze recursive and iterative algorithms for space-time complexity
  • Write programs that use each of the following data structures: arrays, linked lists, stacks, and queues .
  • Implement applications utilizing standard object oriented design principles like encapsulation, inheritance, polymorphism, and dynamic binding.
  • Implement recursive and iterative algorithms over appropriate data structures (e.g., tree traversal, pre-order, and post-order)
  • Understand resursive solutions and use recursion to solve problems such as sorting.
  • Develop and implement a dictionary data type incorporating hashing algorithms and collision avoidance.

Summer 2024

Section Title Instructor books eservices
01 Introduction to Data Structures Cassidy, Benjamin Books for ICS-240-01 Summer 2024 Course details for ICS-240-01 Summer 2024
02 Introduction to Data Structures Armitage, Bradford C Books for ICS-240-02 Summer 2024 Course details for ICS-240-02 Summer 2024

Fall 2024

Section Title Instructor books eservices
01 Introduction to Data Structures Stein, Michael Books for ICS-240-01 Fall 2024 Course details for ICS-240-01 Fall 2024
02 Introduction to Data Structures Houeto, Sena Books for ICS-240-02 Fall 2024 Course details for ICS-240-02 Fall 2024
03 Introduction to Data Structures Houeto, Sena Books for ICS-240-03 Fall 2024 Course details for ICS-240-03 Fall 2024

Spring 2025

Section Title Instructor books eservices
01 Introduction to Data Structures Houeto, Sena Books for ICS-240-01 Spring 2025 Course details for ICS-240-01 Spring 2025
02 Introduction to Data Structures Stein, Michael Books for ICS-240-02 Spring 2025 Course details for ICS-240-02 Spring 2025