Skip to main content

Disjoint set data structure implementation for Python

Project description

disjoint-set

PyPI - License PyPI - Python Version PyPI

DisjointSet (a.k.a. union–find data structure or merge–find set) implementation for Python.

Prerequisites

The only requirement is having Python 3 installed, you can verify this by running:

$ python --version
Python 3.7.2

Installation

pip install disjoint-set

You can verify he package was installed to your current environment by running:

$ pip list | grep disjoint-set
disjoint-set      0.5.0

Usage

>>> from disjoint_set import DisjointSet
>>> ds = DisjointSet()
>>> ds.find(1)
1
>>> ds.union(1,2)
>>> ds.find(1)
2
>>> ds.find(2)
2
>>> ds.connected(1,2)
True
>>> ds.connected(1,3)
False

>>> "a" in ds
False
>>> ds.find("a")
'a'
>>> "a" in ds
True

>>> list(self.dset)
[(1, 2), (2, 2), (3, 3), ('a', 'a')]

Contributing

Feel free to open any issues on github.

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

disjoint_set-0.5.0.tar.gz (2.9 kB view hashes)

Uploaded Source

Built Distribution

disjoint_set-0.5.0-py3-none-any.whl (4.6 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page