/ClassicComputerScienceProblemsInPython

Source Code for the Book Classic Computer Science Problems in Python

Primary LanguagePythonApache License 2.0Apache-2.0

Classic Computer Science Problems in Python

This repository contains source code to accompany the book Classic Computer Science Problems in Python by David Kopec. You will find the source organized by chapter. As you read the book, each code listing contains a file name that corresponds to a file in this repository.

Classic Computer Science Problems in Python Cover

Get the Book

  • Manning the publisher sells both hard copy and DRM-free eBook editions
  • Amazon if you buy the hard copy from Amazon, it will come with a way to download the eBook for free from the publisher

Versioning and Packages

The source code in this repository requires Python 3.7 and installation of the typing_extensions package. Due to its extensive use of Python 3.7 features (data classes, advanced type hints, etc.), most of the source code will not work with earlier versions of Python. You can install the typing_extensions package with pip3 install typing_extensions or pip install typing_extensions depending on your Python/pip setup.

Questions about the Book

You can find general questions and descriptive information about the book on the Classic Computer Science Problems website. Also, feel free to reach out to me on Twitter, @davekopec. If you think you found an error in the source code, please open an issue up here on GitHub.

Free Content Based on the Book

License

All of the source code in this repository is released under the Apache License version 2.0. See LICENSE.

Other Books and Languages

This is the second book in the Classic Computer Science Problems series by David Kopec and published by Manning. It aims to teach classic computer science problems in a Pythonic way. You may also want to checkout the first book in the series, Classic Computer Science Problems in Swift, which covers most of the same problems in a more Swifty way. You can check out the repository for that book on GitHub as well. A reader has also reimplemented the first five chapters of the book in C++.