Algorithms are used in a distributed environment to provide the infrastructure for applications in the constantly changing, peer-to-peer topology. This timely primer translates pages of mathematical symbolism and theory found in similar books into common analogies, simple C-language program segments, and straightforward verbal descriptions. Each chapter features a practical reference section to show how an algorithm evolved and an anatomy section that helps readers understand why one variation works best. Professional software developers and computer science graduate students or advanced undergrad students will rely on this technical reference.