Skip to main content


Algorithms / Data Structures

Ensuring data is structured in an efficient way is an integral part of computer science. These titles have been selected to support clear learning and understanding of this important topic.

2016 | Computer Science | Book

Limits of Computation

From a Programming Perspective

This textbook discusses the most fundamental and puzzling questions about the foundations of computing. In 23 lecture-sized chapters it provides an exciting tour through the most important results in the field of computability and time complexity …

Bernhard Reus

2009 | Computer Science | Book

A Concise and Practical Introduction to Programming Algorithms in Java

A Concise and Practical Introduction to Programming Algorithms in Java has two main goals. The first is for novice programmers to learn progressively the basic concepts underlying most imperative programming languages using Java. The second goal …

Frank Nielsen

2016 | Computer Science | Book

Algorithms for Data Science

This textbook on practical data analytics unites fundamental principles, algorithms, and data. Algorithms are the keystone of data analytics and the focal point of this textbook. Clear and intuitive explanations of the mathematical and statistical …

Brian Steele, John Chandler, Swarna Reddy

2015 | Computer Science | Book

Data Structures and Algorithms with Python

This textbook explains the concepts and techniques required to write programs that can handle large amounts of data efficiently. Project-oriented and classroom-tested, the book presents a number of important algorithms supported by examples that …

Kent D. Lee, Steve Hubbard

2014 | Computer Science | Book

Practical Analysis of Algorithms

This book introduces the essential concepts of algorithm analysis required by core undergraduate and graduate computer science courses, in addition to providing a review of the fundamental mathematical notions necessary to understand these …

Dana Vrajitoru, William Knight

2011 | Computer Science | Book

Proofs and Algorithms

An Introduction to Logic and Computability

Logic is a branch of philosophy, mathematics and computer science. It studies the required methods to determine whether a statement is true, such as reasoning and computation.

Proofs and Algorithms: Introduction to Logic and Computability is an …

Gilles Dowek

2014 | Computer Science | Book

Python Algorithms

Mastering Basic Algorithms in the Python Language

Python Algorithms, Second Edition explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid …

Magnus Lie Hetland

2015 | Computer Science | Book

Genetic Algorithms in Java Basics

Genetic Algorithms in Java Basics is a brief introduction to solving problems using genetic algorithms, with working projects and solutions written in the Java programming language. This brief book will guide you step-by-step through various …

Lee Jacobson, Burak Kanber

2008 | Algorithms | Book

The Algorithm Design Manual

This newly expanded and updated second edition of the best-selling classic continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency. Expanding on the first edition, the book now serves as the primary …

Steven S. Skiena