- Course Code:
01:198:112
- Title:
Data Structures
- Semester(s) Offered:
Summer
- Degree Type (BA/BS):
BA in Data Science, BS in Data Science
- Track Option:
Computer Science Track (Code: NB219SJ), Statistics Track Courses (Code: NB219TJ)
- Degree Option:
BA in Data Science - Statistics Track Courses (Code: NB219TJ), BS in Data Science- Computer Science Track (Code: NB219SJ)
- Prerequisite:
You will be expected to hit the ground running with all the topics you learned in 111 - strings, arrays, searching, sorting, recursion, Big O, objects. In order to review objects and Big O in particular, you are urged to read the following from the text:
Chapter 1: Object-Oriented Programming in Java - Sections 1.1 and 1.2
Chapter 3: Efficiency of Algorithms - Entire chapter, all sections
- Learning Goals:
- Analyze runtime efficiency of algorithms related to data structure design.
- Select appropriate abstract data types for use in a given application.
- Compare data structure tradeoffs to select the appropriate implementation for an abstract data type.
- Design and modify data structures capable of insertion, deletion, search, and related operations.
- Combine data structures to build more complex implementations.
- Trace through and predict the behavior of algorithms (including code) designed to implement data structure operations.
- Identify and remedy errors/inefficiencies in a data structure implementation that may cause its behavior to differ from the intended outcomes.
- Design data structures and associated algorithms to meet specified performance requirements for given task specifications.
- Exams:
There will be 3 in person exams, 2 midterms and 1 final.