© 2013

The Power of Algorithms

Inspiration and Examples in Everyday Life

  • Giorgio Ausiello
  • Rossella Petreschi

Table of contents

  1. Front Matter
    Pages i-xiv
  2. Finding One’s Way in a World of Algorithms

    1. Front Matter
      Pages 1-1
    2. Giorgio Ausiello
      Pages 3-26
    3. Rossella Petreschi
      Pages 27-57
    4. Alessandro Panconesi
      Pages 59-81
  3. The Difficult Simplicity of Daily Life

    1. Front Matter
      Pages 83-83
    2. Camil Demetrescu, Giuseppe F. Italiano
      Pages 85-105
    3. Paolo Ferragina, Rossano Venturini
      Pages 107-137
    4. Alberto Marchetti-Spaccamela
      Pages 139-165
    5. Raffaele Giancarlo
      Pages 167-186
    6. Fabrizio Rossi, Antonio Sassano, Stefano Smriglio
      Pages 187-205
    7. Vincenzo Bonifaci, Stefano Leonardi
      Pages 207-234
    8. Riccardo Silvestri
      Pages 235-250
  4. Back Matter
    Pages 251-255

About this book


To examine, analyze, and manipulate a problem to the point of designing an algorithm for solving it is an exercise of fundamental value in many fields. With so many everyday activities governed by algorithmic principles, the power, precision, reliability and speed of execution demanded by users have transformed the design and construction of algorithms from a creative, artisanal activity into a full-fledged science in its own right. This book is aimed at all those who exploit the results of this new science, as designers and as consumers.


The first chapter is an overview of the related history, demonstrating the long development of ideas such as recursion and more recent formalizations such as computability. The second chapter shows how the design of algorithms requires appropriate techniques and sophisticated organization of data. In the subsequent chapters the contributing authors present examples from diverse areas – such as routing and networking problems, Web search, information security, auctions and games, complexity and randomness, and the life sciences – that show how algorithmic thinking offers practical solutions and also deepens domain knowledge.


The contributing authors are top-class researchers with considerable academic and industrial experience; they are also excellent educators and communicators and they draw on this experience with enthusiasm and humor. This book is an excellent introduction to an intriguing domain and it will be enjoyed by undergraduate and postgraduate students in computer science, engineering, and mathematics, and more broadly by all those engaged with algorithmic thinking.


Algorithmics Algorithms Algorithms in nature Auctions Bioinformatics Broadcasting Complexity Computational complexity Computational systems biology Computer science education Cryptology Data structures Digital signatures Game theory Games Graphs History of science Indexing Information science Life science Mechanism design Network design Optimization Popular science Prisoner's dilemma Randomness Routing Search String algorithmics Web search

Editors and affiliations

  • Giorgio Ausiello
    • 1
  • Rossella Petreschi
    • 2
  1. 1.Università di Roma "La Sapienza" Dip. di Informatica e SistemisticaRomeItaly
  2. 2.Università di Roma "La Sapienza" Dipartimento di InformaticaRomeItaly

About the editors

Giorgio Ausiello is Professor Emeritus in the Dipartimento di Ingegneria Informatica, Automatica e Gestionale, Università di Roma "La Sapienza". He has coauthored numerous formal academic journal and conference publications, and his book publications include the Springer title "Complexity and Approximation" published in 2000. He is the Editor-in-Chief of the leading journal Elsevier journal "Theoretical Computer Science", Part A, and co-Editor-in-Chief of the Springer LNCS series "Advanced Research in Computing and Software Science". He has chaired many related conferences and research groups, and he was a founding member of the European Association for Theoretical Computer Science (EATCS), and its President from 2006 to 2009. His main research interests include on-line algorithms, approximation algorithms, dynamic graph algorithms, optimization problems in vehicle routing and logistics, and streaming algorithms; he has also researched and published on programming theorys, computational complexity, and database theory.


Rossella Petreschi is Professor in the Dipartimento di Informatica, Università di Roma "La Sapienza", where she was a founding faculty member and the director from 2003 to 2009. She cofounded the International Conference on Algorithms and Complexity (CIAC), and she coauthored many formal academic journal and conference publications. Her research interests include algorithm design and analysis, parallel and distributed computing, efficient solutions of graph problems, labelled tree encodings, and frequency assignments in wireless networks. She has also researched and published on graph drawing, interconnection topologies and experimental algorithmics. Many of her former students occupy key positions in industry and research.

Bibliographic information

Industry Sectors
IT & Software


“This is a valuable book that introduces the reader into the history, developments, and methodology of algorithms. It is a good source for teachers giving algorithm course to students majoring in fields other than computer science or mathematics. Its language, style and outlook is appealing also for any non-academic person who want to obtain some inspiration for the age of computers.” (Péter Hajnal, Acta Scientiarum Mathematicarum, Vol. 81 (3-4), 2015)

“The book starts with the ancient and medieval history of algorithms, and finishes with a dialog on randomness in problem solving. For each topic, the key problems are presented and the accepted algorithms are described. … this book belongs in all college libraries and CS faculty may like a copy beside their classic algorithms texts.” (Richard Botting, Computing Reviews, April, 2014)