S-111
  • Home
  • Lectures
  • Problem Sets
  • Sections
  • Syllabus
  • Schedule
  • Staff
  • Resources
  • Canvas
  • Ed Discussion
  • Gradescope

Computer Science S-111
Intensive Introduction to Computer Science
and Data Structures

Welcome!

Important announcements will be made using Canvas. Make sure that you configure your Canvas account settings so that announcements will be emailed to you immediately; see Problem Set 0 for details. You can also find the archive of all of the announcements here.

Course Information

This course is a fast-paced and rigorous introduction to computer science. The first half of the course covers foundational programming concepts such as data types, conditional execution, iteration, and recursion. It also explores the key features of object-oriented programming, as well as the manipulation of data stored in files and arrays. The second half of the course provides a survey of fundamental data structures including lists, stacks, queues, trees, and graphs. It explores the implementation of these data structures using both array-based and linked representations, and it examines classic algorithms that use these structures for tasks such as sorting, searching, and text compression. Techniques for analyzing the efficiency of algorithms are also covered.

For more information about the topics this course covers, prerequisites, and other policies, please see the syllabus.

Last updated on June 23, 2025.