6.00SC | Spring 2011 | Undergraduate
Introduction to Computer Science and Programming


« Previous | Next »


The original textbook for 6.00 and the course lectures parallel each other, though there is more detail in the book about some topics. The book is NOT required. We will not be referring to it in assignments or depending upon it to cover holes in the lectures.

Buy at MIT Press Guttag, John. Introduction to Computation and Programming Using Python. Spring 2013 edition. MIT Press, 2013. ISBN: 9780262519632.

A second edition of the textbook is now available. However, there may be some discrepancies between the original course lectures included on this course site and the sections in this second edition of the textbook.

Buy at MIT Press Guttag, John. Introduction to Computation and Programming Using Python: With Application to Understanding Data. MIT Press, 2016. ISBN: 9780262529624.

If you choose not to purchase this book, you will probably find it useful to buy or borrow another book that covers Python. You might check your local public library’s resources, or search online for a free Python text, such as How to Think Like a Computer Scientist or An Introduction to Python (PDF).

Other optional textbooks:

References (Python 2.5.4)

Further Readings

Probability and Statistics for Computer Scientists

Simulation Methods

Breadth-First and Depth-First Searches

Although two of these are Wikipedia articles, these pages have a lot of information, including animated images showing you what nodes are chosen. Once you understand how both algorithms work, try writing out the order nodes are visited in another graph using both BFS and DFS.

« Previous | Next »

Course Info
As Taught In
Spring 2011
Learning Resource Types
theaters Lecture Videos
theaters Recitation Videos
assignment_turned_in Problem Sets with Solutions
grading Exams with Solutions
menu_book Online Textbook
assignment_turned_in Programming Assignments with Examples