Spring 2010

Data Structures and Algorithms I

Listed in: Computer Science, as COSC-20



This course is the first part of a two-semester sequence examining data structures (ways of organizing data so that it can be used effectively) and algorithms (the methods that can be used to manipulate data). The use of appropriate data structures and algorithms can often dramatically reduce the computational work needed to solve a problem. Topics examined in this course will include proof techniques, run-time analysis, heaps, hash tables, sorting, searching, and divide-and-conquer algorithms. The course will provide advanced programming experience and will emphasize the use of abstraction in program design. This class is not open to students who previously took Computer Science 21.

Requisite: Computer Science 11. Spring semester. Professor L. McGeoch.


2020-21: Not offered
Other years: Offered in Fall 2007, Spring 2009, Spring 2010, Spring 2011, Spring 2012, Spring 2013, Spring 2014, Spring 2015, Spring 2016


The textbook for Computer Science 20 in spring 2010 will be Introduction to Algorithms, third edition, by Cormen, Leiserson, Rivest and Stein, MIT Press, 2009.  The ISBN is 978-0-262-03384-8.  Please note that this is a newer edition than the text previously used in COSC 20 and 30.  We will use the new edition in next fall's COSC 30, so one book will cover both classes.  The price at Amazon appears to be about $59.