Courses
The Department of Computer Science offers over a hundred courses at the undergraduate and graduate level. Some courses are cross-listed and offered in collaboration with other departments such as Electrical Engineering, Industrial & Systems Engineering, Math, and the Information Technology Program.
Course Information:
USC Academic Catalogue - CSCI Course Descriptions
USC Schedule of Classes - Main Page
- CSCI Courses offered in Spring 2025
- CSCI Courses offered in Summer 2024
- CSCI Courses offered in Fall 2024
Course Introduction Videos:
>> Watch All Course Introduction Videos
CSCI 102: Fundamentals of Computation (Professor Mark Redekopp)
CSCI 103: Introduction to Programming (Senior Lecturer Andrew Goodney)
CSCI 104: Data Structures and Object Oriented Design (Lecturer Michael Shindler)
CSCI 170: Discrete Methods in Computer Science (Senior Lecturer Sandra Batista)
CSCI 402: Operating Systems (Senior Lecturer Bill Cheng)
CSCI 455: Introduction to Programming Systems Design (Senior Lecturer Claire Bono)
CSCI 485: File and Database Management (Associate Professor Shahram Ghandeharizadeh)
CSCI 491AB & CSCI 529AB: Games Development (Professor Michael Zyda)
CSCI 530: Computer Security Systems (Associate Professor Clifford Neuman)
CSCI 571: Web Technologies (Adjunct Assistant Professor Marco Papa)
CSCI 572: Information Retrieval and Web Search Engines (Professor Ellis Horowitz)
CSCI 585: Principles of Database Systems (Senior Lecturer Saty Raghavachary)
CSCI 662: Advanced Natural Language Processing (Professor Kevin Knight)