Textbook (Paperback - REV)
Textbook Information
Robert Sedgewick is one of the most revered individuals in computer science. He is the William O. Baker Professor of Computer Science at Princeton University. He is a director of Adobe Systems and has held visiting research positions at INRIA, the Institute for Defense Analyses, and Xerox PARC. Michael Schidlowsky contributed to the Java implementations. Michael, a Princeton graduate, is an independent software consultant specializing in object-oriented programming. Most recently he was the CTO of Teaching That Works, and the founder of xSense Corporation.
Reader Rating:
See Detailed Ratings
May 25, 2004: In my work, I have a bunch of interlinked objects. I can use tables to display these, but showing linkages is awkward. It is far more natural to graph them. This lets me use evolution, for the human eye and brain are excellent at processing images and discerning patterns in them. But I also want to algorithmically find groupings and invariant properties of the graphs. There is a danger here. In graph theory, it is very easy to inadvertantly pose a simple question that is computationally hard to solve (NP-hard). Conversely, I don't want to reinvent the wheel. From graph theory, there may well be properties of my graph that I can easily extract. Certainly, the amount of research on graphs is voluminous. But how does one take advantage of that? Consulting research journals in maths for papers on graph theory is really feasible only for the career mathematician. But for me, graphs are just a tool; not an ends per se. So I need a book that has the right amount of complexity. It needs to get enough into the subject, beyond the trivial exposition of definitions. Yet it should not bury me in lemmas and theorems. I found such a book! This one. A well deserved third iteration. The explanations are extremely clear. Before I encountered this text, I used Donald Knuth's 'Art of Computer Programming' (which is also put out by Addison-Wesley) and his treatment of graphs. But Sedgewick's discourse is far more extensive and, to me, just as well written. A bonus is the extensive problem sets at the ends of each chapter. Even if I have no inclination to do them, the results they give are a valuable extension of the text, by providing an extra summary of the research. I only wish that Sedgewick would provide answers, like Knuth. But this is a just a quibble. This edition has example code in Java. Certainly nothing wrong with that. [I program in Java.] But really the code should be a secondary consideration to you. If you are a programmer and you can understand the text, then you should be of a calibre that you can write the code.