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 Jeffrey Scott Vitter - Now Publishers
The book describes several useful paradigms for the design and implementation of efficient EM algorithms and data structures. The problem domains considered include sorting, permuting, FFT, scientific computing, computational geometry, graphs, etc.
by Clifford A. Shaffer - Virginia Tech
A comprehensive treatment of fundamental data structures and algorithm analysis with a focus on how to create efficient data structures and algorithms. Aims to help the reader gain an understanding of how to select or design the best data structure.
by Sean Luke
This is an open set of lecture notes on metaheuristics algorithms, intended for undergraduate students, practitioners, programmers, and other non-experts. It was developed as a series of lecture notes for an undergraduate course.
by Chris Okasaki - Carnegie Mellon University
This book describes data structures from the point of view of functional languages. The author includes both classical data structures, such as red-black trees, and a host of new data structures developed exclusively for functional languages.