Design and Analysis of Computer Algorithms
by David M. Mount
Publisher: University of Maryland 2003
Number of pages: 135
Programming is a very complex task, and there are a number of aspects of programming that make it so complex. The first is that most programming projects are very large, requiring the coordinated efforts of many people. (This is the topic a course like software engineering.) The next is that many programming projects involve storing and accessing large quantities of data efficiently. (This is the topic of courses on data structures and databases.) The last is that many programming projects involve solving complex computational problems, for which simplistic or naive solutions may not be efficient enough. The complex problems may involve numerical data (the subject of courses on numerical analysis), but often they involve discrete data. This is where the topic of algorithm design and analysis is important.
Home page url
Download or read it online for free here:
by Jurg Nievergelt, Klaus Hinrichs - Prentice Hall
Contents: Programming environments for motion, graphics, and geometry; Programming concepts - beyond notation; Objects, algorithms, programs; Complexity of problems and algorithms; Data structures; Interaction between algorithms and data structures.
by Jeff Erickson - University of Illinois at Urbana-Champaign
These are lecture notes, homework questions, and exam questions from algorithms courses the author taught at the University of Illinois. It is assumed that the reader has mastered the material covered in the first 2 years of a typical CS curriculum.
by Albert Nijenhuis, Herbert S. Wilf - Academic Press Inc
This is a collection of mathematical algorithms with many new and interesting examples in this second edition. The authors tried to place in the reader's hands a kit of building blocks with which the reader can construct more elaborate structures.
by K. Mehlhorn, P. Sanders - Springer
This book is a concise introduction addressed to students and professionals familiar with programming and basic mathematical language. Individual chapters cover arrays and linked lists, hash tables and associative arrays, sorting and selection, etc.