Before you leave...
Take 20% off your first order
20% off
Enter the code below at checkout to get 20% off your first order
Discover summer reading lists for all ages & interests!
Find Your Next Read
This book offers a gentle motivation and introduction to computational thinking, in particular to algorithms and how they can be coded to solve significant, topical problems from domains such as finance, cryptography, Web search, and data compression.
The book is suitable for undergraduate students in computer science, engineering, and applied mathematics, university students in other fields, high-school students with an interest in STEM subjects, and professionals who want an insight into algorithmic solutions and the related mindset. While the authors assume only basic mathematical knowledge, they uphold the scientific rigor that is indispensable for transforming general ideas into executable algorithms. A supporting website contains examples and Python code for implementing the algorithms in the book.
Paolo Ferragina is professor of computer science at the Sant'Anna School of Advanced Studies and at the University of Pisa, Italy. He holds a PhD in computer science at the University of Pisa and a postdoc at the Max-Planck Institute for Informatics. He served the University of Pisa as ViceRector for ICT (2019-22) and for Applied Research and Innovation (2010-16), and as the Director of the PhD program in Computer Science (2018-20). His research focuses on designing algorithms and data structures for compressing, mining, and retrieving information from big data. He is the co-recipient of the "2022 ACM Paris Kanellakis Theory and Practice Award" and numerous other international awards. Ferragina has previously collaborated with AT&T, Bloomberg, Google, ST microelectronics, Tiscali, and Yahoo. His research has produced several patents and has featured in over 180 papers published in renowned and conferences and journals. He has spent research periods at the Max Planck Institute for Informatics, the University of North Texas, the Courant Institute at New York University, the King's College, the MGH/Harvard Medical School, AT&T, Google, IBM Research, and Yahoo.
Fabrizio Luccio is an emeritus professor of computer science at the University of Pisa, Italy. He received his Dr. Ing. degree in electrical engineering from the Politecnico di Milano in 1962. After an industrial experience at Olivetti, he joined MIT as a research staff member, and taught logical network synthesis at the University of Southern California, and New York University. He has been at the University of Pisa since 1971, as a professor, department chair, and coordinator of the PhD program in Computer Science. He has been a visiting scientist at the IBM T.J. Watson Research Center and at the NTT LSI Laboratories in Japan, and a visiting professor of UCLA, the University of Illinois, the National University of Singapore, the University of Hawaii, and the Carleton University in Ottawa. On Behalf of UNESCO, he directed a thirty-year project for the dissemination of informatics at university level in developing countries. His main research interests are algorithm design in sequential, parallel, and distributed environments, and the relationship between abstract computational models and realistic computers and circuits. He is a Life Fellow of the IEEE and a Life Member of ACM.
Thanks for subscribing!
This email has been registered!
Take 20% off your first order
Enter the code below at checkout to get 20% off your first order