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

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.First day attendance is mandatory.
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.
  • 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.

Spring 2022

Section Title Instructor
01 Introduction to Data Structures Kishawy, Mohamed Books Course details
50 Introduction to Data Structures Ghanem, Thanaa M Books Course details
51 Introduction to Data Structures Kishawy, Mohamed Books Course details

Summer 2022

Section Title Instructor
01 Introduction to Data Structures Kishawy, Mohamed Books Course details
50 Introduction to Data Structures Cassidy, Benjamin Books Course details

Fall 2022

Section Title Instructor
01 Introduction to Data Structures Stein, Michael Books Course details
50 Introduction to Data Structures Stein, Michael Books Course details
51 Introduction to Data Structures Kishawy, Mohamed Books Course details