Pitt Logo SIS Logo

Department of Information Science and Telecommunications

 

INFSCI 0015 - Data Structures and Programming Techniques

(Spring 2001, CRN 28006)


[ Formal Data | Course Tools | Syllabus & Schedule | Course Books | Course Materials | CourseInfo | Links ]


INFSCI 0015 Course Books

INFSCI 015 is unique in the sense that you will need to learn both C language and Data Structures in parallel. This page lists your strongly recommended course books and some other books that may be helpful for your to master both subjects. You should be able to get both required books in the University Book Center. The two strongly recommended books and three of recommended books (Deitel&Deitel, Perry, Gookin) have also been reserved for you in the Information Sciences Library. You can locate the reserved books through Course Reserves.

Main course books

Learning C language:

The C Programming Language, 2nd edition1
Brian Kernighan, Dennis M. Ritchie
Prentice Hall 1989, 274 pp.
ISBN 0-13-110362-8

Read publisher's description of the book
Buy / read about this book at amazon.com ($40)

1It's important that you get the second edition because it presents the ANSI standard version of C. The second edition of the book is commonly referred as K&R2

 This book is strongly recommended because examples from this book are used in the lectures and because your readings will be assigned from this book. This is the book of choice of all intructors teaching C-based version of INFSCI0015. In addition to being one of the best textbooks on C language, this book is considered as a "bible" of C programmers. Unlike many other course books it will likely serve you for years after taking the course. 

Learning Data Structures:

Data Structures : A Pseudocode Approach With C
by Richard F. Gilberg, Behrouz A. Forouzan
Pws Pub Co;, 1998.
ISBN: 0534951236

Buy / read about this book at amazon.com ($64.95)
Buy / read about this book at bn.com ($63.75)

 This book is strongly recommended because we will follow it very closely in the lectures (i.e., it will give you a second chance to understand the material if you have skipped a lecture of had troubles understanding it. All your "data structure" readings will be assigned from this book. This book has a "sister book" from the same authors and with almost the same title, but based on C++ istead of ANSI C. If you are buying this book, make sure that you are getting C version (checking ISBN in the bookstore could be a good idea). However, if you can borrow the C++ version from a friend, there is no need to buy the C version. They are almost identical.

Recommended additional books for C:

If you have a programming experience (with any procedural programming language), K&R2 is the only C book you will need for the course. If it is your first solid encounter with a programming language (passing some programming course in the past with C or B is hardly a solid encounter) you will definitely need one of many existing textbooks that provide a more gentle and more detailed introduction to C. Pick up your second book early! The instructor of this course have reviewed about a dozen of popular books and also have collected recommendations of students taken this course in the past. Here are six additional books that we recommend most. Note that none of the books can fit everyone in the class since you have different backgrounds and learning styles. Pick one that better fits your style or simply one that you have around (i.e., can borrow or by used). Examine readers' feedback for these books on Amazon.com when making a decision. Note also that some of them could be available for less than half of its price on an auction. For those who may consider to buy these books new we have provided the prices. Note, however, that price and quality are different things. The first threr books are among the best college textbooks on C. College textbooks are specially written with college students in mind, but they tend to be expensive. They have been used in the past in conjunction with other courses at our department and other departments at Pitt, so you have a good chance to get a used copy from your fellow students. Deitel and Deitel book was the most favorite second book in the Fall 2000 section of 0015. The second three are the leaders of the "home reader" market. This kind of books simply has to be cheaper and can provide a good value for those without programming experience.  They were found very usuful by a number of our students who were starting almost from scratch.

A C How to Program
Harvey Deitel, Paul Deitel
3rd Edition (earlier editions will also work)
Prentice Hall, 2000, 1253 pp.
ISBN: 0130895725

Read publisher's description of the book
Buy / read about this book at amazon.com ($70.00)

A Book on C: Programming in C
Al Kelley and Ira Pohl
4th Edition (earlier editions will also work)
Addison-Wesley1998, 752 pp.
ISBN 0-201-18399-4

Read publisher's description of the book
Buy / read about this book at amazon.com ($39.95)

ANSI C: Problem Solving and Programming
Kenneth Barclay
Prentice Hall, 1991, 500 pp.
ISBN 0-13-037326-5

Read publisher's description of the book
Buy / read about this book at amazon.com ($61)

Programming in ANSI C
Stephen G. Kochan

Sams, 1994, 534 pp.
ISBN: 0672303396

Buy / read about this book at amazon.com ($23.96)

C for Dummies
Dan Gookin

IDG Books Worldwide, 800 pp.
ISBN: 1568849397

Buy / read about this book at amazon.com ($31.99)

Absolute Beginner's Guide to C
by Greg M. Perry

2nd edition
Sams, 1994.
ISBN: 0672305100

Buy / read about this book at amazon.com ($17.60)

 

Other books on C:

Here are some more options for the second C book. All of these books got some positive feedback from my colleagues or from the students taken this class in the past, but were not among the leaders. I have not included them in the "main list" above, but they may be a good choice for you (especially if you can get it free or cheap).

 

Other books on Data Structures:

The required book should be the only data structure book you need for this course. There are, however,  a few other good books that use C language as a basis for data structures. Here is the list of books (with references to some information about each) that we consider better or closer to this course than others. Check if you want advanced knowledge on data structures. Some of these books could be found in Pitt or CMU library, but they have not been reserved for this course.

Copyright © 2001 Peter Brusilovsky