Probabilistic Data Structures and Algorithms in Python
Project description
The Book
Everybody interested in learning more about probabilistic data structures and algorithms could be referred to our recently published book:
Probabilistic Data Structures and Algorithms for Big Data Applications by Andrii Gakhov
2019, ISBN: 978-3748190486 (paperback) ASIN: B07MYKTY8W (e-book)
Introduction
Probabilistic data structures is a common name of data structures based on different hashing techniques.
Unlike regular (or deterministic) data structures, they always provide approximated answers, but usually with reliable ways to estimate the error probability.
The potential losses or errors are fully compensated by extremely low memory requirements, constant query time and scaling.
GitHub repository: https://github.com/gakhov/pdsa
Dependencies
Python 3.5+ (http://python.org/download/)
Cython 0.25+ (http://cython.org/#download)
Documentation
The latest documentation can be found at http://pdsa.readthedocs.io/en/latest/
Membership problem
Cardinality problem
Rank problem
License
MIT License
Source code
Install with pip
Installation requires a working build environment.
Using pip, PDSA releases are currently only available as source packages.
$ pip3 install -U pdsa
When using pip it is generally recommended to install packages in a virtualenv to avoid modifying system state:
$ virtualenv .env -p python3 --no-site-packages
$ source .env/bin/activate
$ pip3 install -U cython
$ pip3 install -U pdsa
Compile from source
The other way to install PDSA is to clone its GitHub repository and build it from source.
$ git clone https://github.com/gakhov/pdsa.git
$ cd pdsa
$ make install
$ bin/pip3 install -r requirements-dev.txt
$ make test
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.