Here is an accessible, algorithmically oriented guide to some of the most interesting techniques of complexity theory. The book shows that simple algorithms are at the heart of complexity theory. The book is organized by technique rather than by topic. Each chapter focuses on one technique: what it is, and what results and applications it yields.
From the reviews of the first edition:
"The introduction ... begins with two secrets: that algorithms are at the heart of complexity theory, and moreover that simple algorithms are at the heart of complexity theory. The main body of the book then proceeds to try and illustrate this view. ... While all the chapters primarily deal with a succession of theorems, lemmas and proofs, the surrounding text makes it fairly accessible and readable. ... The appendices are very well laid out and could probably replace a small library of textbooks." (A. Weaver, Journal of the Operational Research Society, Vol. 54, 2004)
"The book is intended for readers who seek an accessible, algorithmically oriented research-centered, up-to-date guide to several interesting techniques of computational complexity. In contrast to the organization of other books, each chapter of this book focuses on one particular technique in complexity theory. ... The book contains two appendices, the first presenting a concise overview on complexity classes, the second one on reductions. The book presents a survey on a great variety of recent interesting techniques in complexity." (Ludwig Staiger, Zentralblatt MATH, Vol. 993, 2002)