thomas@ektools.UUCP (Thomas B. Kinsman) (12/22/88)
The following is a bibliography generated by a recent request to the net for reference books on algorithms in general. No names will be mentioned, but replies came from many countries around the world. Several people that I consider influential in our field responded. Thanks are expressed for all who responded. I found it amusing that there were several different combinations of titles and authors given for "THE Dragon Book". The rumors are not clear as to whether the authors (Aho, Hopcroft, Sethi, and Ullman) are married to each other, or are simply joined at the waist from birth. :-) You can all speculate about that among yourselves. Certainly they have made an important contribution to our field. People generally mentioned Knuth. However, Knuth was frequently mentioned as a lower priority choice when priorities were men- tioned. Many expressed difficulty with the way algorithms were given in Knuth. Others suggested that Knuth's method of presentation leads to a better understanding of the method of implementation. Sedgewich was a popular first choice. However, no one mentioned that there is now a second edition of this book. Note: This was not a scientific survey. Votes were cast for a reference by mentioning it in a positive way. In the case where prioritized lists were received, no weights were assigned. Ti- tles, Authors, etc... were taken on good faith. The existence of references was NOT CHECKED. Some people just responded by mentioning authors. Referring to a book as "Smith, and Jones" is not always helpful, especially if Smith and Jones ARE really married to each other and have jointly written several books. I did my best to figure out which book was intended, without killing myself in the process. Some respondents just mentioned titles. Some books are so closely related, i.e. the "Numerical Recipies in..." series, that they were grouped together. At any rate, this is just an information source for your consideration. Neither I, nor my company, recommend any of them. The following sources of inform- ation are some you may wish to know about: A more verbose list is posted to the news group "comp.misc". ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ General Quotes: "...you judge the utility of a reference handbook by the condi- tion (the more battered the copy, the more it's been used)..." "...It's really difficult to pick a first, because this is nearly always context-dependent..." "...I hunt around other peoples desks or wander through the load of sources we have on our system..." Source: "Algorithms", by Robert Sedgewick Votes: 19 quotes: "...general purpose..." Source: "The Art of Computer Programming", by Donald E. Knuth Volume 1/ Fundamental Algorithms Volume 2/ Seminumerical Algorithms Volume 3/ Sorting & Searching Votes: 39 quotes: "...the last place I go..." "...No question. Knuth..." Source: "Intro to Data Structures & Algorithms", (or perhaps), "Data Structures & Algorithms", by Aho, Hopcroft & Ullman Votes: 9 quotes: "It's a great little book of basic algorithms & data structures. Nothing too outrageous, though. My copy is almost worn out." Source: Data Structures + Algorithms = Programs, by Wirth Votes: 6 quotes: "...slightly easier to read, & includes quite a bit of Modula-2 code..." "...A notorious book...Disgusting..." Source: Design & Analysis of Computer Algorithms, by Aho, Hopcroft & Ullman Votes: 6 Source: The Theory of Parsing, Translation & Compiling, by Aho & Ullman Votes: 2 Source: Compiler Design, by Hopcroft, Ulmman & Sethi quotes: These are the "dragon" books. <DRAGON> Source: Principles of Compiler Design, by Aho, Hopcroft & Ullman Votes: 4 quotes: The "dragon" book. <DRAGON> Source: Compiler Design, by Aho, Hopcroft & Ullman Votes: 3 quotes: This is the second Dragon book. <DRAGON> Source: Intro to Formal Languages, Automa Theory & Computation by: Hopcroft & Ullman Source: Handbook of Algorithms & Data Structures, by G.H. Gonnet Pub: Addison-Wesley, 1984 Votes: 4 quotes: "I often look at [this book]. It is useful in itself (with code in Pascal and/or C) but also full of references-- to 23 textbooks & 683 papers to be exact." Source: Writing Efficient Programs, by Bentley Source: Programming Pearls, by Bentley Source: Numerical Recipes in C, the art of scientific computing Numerical Recipes in FORTRAN, the art of scientific computing. Numerical Recipes, the art of scientific computing. by: W.T. Vetterling, S.A. Teukolsky, W.H. Press, B.P. Flannery Pub: Cambridge, Cambridge University Press, 1988. ISBN 0-521-35465-X Votes: 8 quotes: "...It doesn't matter which language, really..." "...for numerical stuff..." Source: Structure & Interpretation of Computer Programs, by Abelson & Sussman Votes: 3 quotes: "...for numerical stuff..." by: Bender & Orszag quotes: "...for numerical stuff..." Source: Artificial Intelligence Programming by: Charniac, Reisbeck, Mcdermott & Meehan quotes: "...It's not the most fundamental book, but I've found [it] to be the book that establishes the leap from 'Let's Learn Lisp!' to Lisp in the Real World - filled with all sorts of ideas, & permanently beside my terminal." Source: Recursive Techniques in Programming, by D.W. Barron, quotes: New York, 1968: American Source: Fundamentals of Data Structures Fundamentals of Data Structures in Pascal by: Horowitz & Sahni Votes: 5 quotes: "...my personal favorite..." Source: Principles of Data Structures & Algorithms by: Horowitz & Sahni Votes: 2 quotes: "...for general data structures..." Source: Fundamentals of Computer Algorithms, by Horowitz & Sahni Source: Computers & Intractability: A Guide to the Theory of NP-Completeness, by Michael R. Garey & David S. Johnson. Votes: 2 quotes: "...Perhaps not an algorithm catalog in the strict sense, but I find it useful in problem solving..." Source: Heuristics, by Pearl quotes: "...if the problem is NP complete..." Source: How to Solve It by Computer, by Dromey R.G pub: Prentice/Hall International Series in Comp. Sci. Source: Combinatorial Optimization: Algorithms & Complexity by: Christos H. Papadimitriou & Kenneth Steiglitz quotes: "fairly new but looks like its full of interesting stuff. I looked at several similar ones & bought this." Source: Computer & Job-Shop Scheduling Theory by: E. G. Coffman, Jr. (Ed.) quotes: "A collection written by several recognizable people." Source: "Factorization Methods For Discrete Sequential Estimation" quotes: "useful for estimation algorithms." Source: Data Structures & Network Algorithms, by Tarjan quotes: "...for network problems..." Source: Graphs & Network Algorithms, by Tarjan quotes: "...for combinatorial algorithms & recursive structures..." Source: Priciples of Database & KnowledgeBase Systems, by Ullman Votes: 2 Author: Teorey & Fry quotes: "...for data base work..." Source: Implementations of PROLOG, by Campbell Source: The Computer Modelling of Mathematical Reasoning, by Bundy Source: Anatomy of LISP, by Allen Source: Natural Language Understanding, by Allen Source: Data Structures, by Reingold & Hansen Source: Data Structures, by Standish Votes: 2 quotes: "...understandable level with good Knuth style specifications. Quite complete also..." Source: The Unix Programming Environment, by Kernighan & Pike Source: Software Tools, by Kernighan Source: Matrix Computations, by Holub & Van Loan quotes: "...for numerical analysis..." Source: Artificial Intelligence, by Winston quotes: "...for AI work, either of the books by Winston..." Source: LispCraft, by Wilensky Source: Computer Algorithms, by Sara Baase Source: Lisp, by Winston Source: The Art of Prolog Source: Prolog programming for AI, by Bratko Source: Fundamentals of Interactive Computer Graphics by: Foley & Van Dam Votes: 2 quotes: "...for graphics stuff..." Author: Chris Date quotes: "...Relational Databases..." Author: Ullman, Liskov, Guttag & Sowa quotes: "...Data structures/abstraction..." Source: Any number of articles in CACM Collected Algorithms of the ACM (CALGO). Comm. of ACM TODS (Transactions on Database Systems) Votes: 5 Source: Recent journal article(s) I've read on that problem Source: Algorithms in SNOBOL4, by Gimpel Source: "...the SIGARCH world..."