COMPSCI 201
Data Structures and Algorithms
Alex Steiger
Description from DukeHub
Analysis, use, and design of data structures and algorithms using an object-oriented language like Java to solve computational problems. Emphasis on abstraction including interfaces and abstract data types for lists, trees, sets, tables/maps, and graphs. Implementation and evaluation of programming techniques including recursion. Intuitive and rigorous analysis of algorithms. Prerequisite: Computer Science 101, 102, or 116, or Engineering 103L, or equivalent.
Skills
- programmingdescription: "data structures" and 5 more
- designdescription: "design" and 1 more
AI-resilient: 0 of 5
- No: Physical, lab or field work
- No: Live work with people
- No: Judgment someone is accountable for
- No: A craft you practice with your hands or body
- No: Small, in-person format
The checks lean on Microsoft Research, Working with AI (2025), which found generative AI applies least to physical work and hands-on work with people. A signal, not a promise. How the score works
More in COMPSCI
- Introduction to Computer Science COMPSCI 101L
- Introduction to Computer Systems COMPSCI 210D
- Everything Data COMPSCI 216
- Discrete Math for Computer Science COMPSCI 230
- Computer Architecture COMPSCI 250D
- Introduction to Cyber Policy COMPSCI 255