Competitive Programming in Python: 128 Algorithms to Develop your Coding Skills

Paperback / softback

Main Details

Title Competitive Programming in Python: 128 Algorithms to Develop your Coding Skills
Authors and Contributors      By (author) Christoph Durr
By (author) Jill-Jenn Vie
Translated by Greg Gibbons
Translated by Daniele Gibbons
Physical Properties
Format:Paperback / softback
Pages:264
Dimensions(mm): Height 244,Width 170
Category/GenreComputer programming and software development
Algorithms and data structures
Software Engineering
Mathematical theory of computation
ISBN/Barcode 9781108716826
ClassificationsDewey:005.133
Audience
Tertiary Education (US: College)
Professional & Vocational
Illustrations Worked examples or Exercises

Publishing Details

Publisher Cambridge University Press
Imprint Cambridge University Press
Publication Date 17 December 2020
Publication Country United Kingdom

Description

Want to kill it at your job interview in the tech industry? Want to win that coding competition? Learn all the algorithmic techniques and programming skills you need from two experienced coaches, problem setters, and jurors for coding competitions. The authors highlight the versatility of each algorithm by considering a variety of problems and show how to implement algorithms in simple and efficient code. Readers can expect to master 128 algorithms in Python and discover the right way to tackle a problem and quickly implement a solution of low complexity. Classic problems like Dijkstra's shortest path algorithm and Knuth-Morris-Pratt's string matching algorithm are featured alongside lesser known data structures like Fenwick trees and Knuth's dancing links. The book provides a framework to tackle algorithmic problem solving, including: Definition, Complexity, Applications, Algorithm, Key Information, Implementation, Variants, In Practice, and Problems. Python code included in the book and on the companion website.

Author Biography

Christoph Durr is a senior researcher at the French National Center for Scientific Research (CNRS), affiliated with the Sorbonne University in Paris. After a PhD in 1996 at Paris-Sud University, he worked as for one year as a postdoc at the International Computer Science Institute in Berkeley and one year in the School of Computer Science and Engineering in the Hebrew University of Jerusalem in Israel. He has worked in the fields of quantum computation, discrete tomography, algorithmic game theory, and his current research activity focuses on algorithms and optimisation. From 2007 to 2014, he taught a preparation course for programming contests at the engineering school Ecole Polytechnique, and acts regularly as a problem setter, trainer, or competitor for various coding competitions. In addition, he loves carrot cake. Jill-Jenn Vie is a research scientist at Inria in machine learning. He is an alumni from ENS Paris-Saclay, where he founded the algorithmic club of Paris-Saclay (CAPS) and coached several teams for the International Collegiate Programming Contest (ICPC). He published another book in theoretical computer science to help students prepare for prestigious French competitive exams such as Grandes Ecoles or agregation, and directed a TV show "Blame the Algorithm" about the algorithms that govern our lives. He is part of the advisory board of the French Computer Science Society (SIF), itself a member of the International Federation for Information Processing (IFIP).

Reviews

'This book guides the reader through a collection of interesting problems, teaching us many ideas that underlie efficient algorithms. The simplicity of Python helps highlight the beauty and accessibility of the ideas. I found it a most enjoyable and engaging book.' Anupam Gupta, Carnegie Mellon University