Skip to main content

A Pythonic indexed priority queue.

Project description

A priority queue dictionary maps hashable objects (keys) to priority-determining values. It provides a hybrid dictionary/priority queue API.

CI Documentation Status https://img.shields.io/pypi/v/pqdict.svg

The priority queue is implemented as a binary heap of (key, priority value) pairs, which supports:

  • O(1) search for the item with highest priority

  • O(log n) removal of the item with highest priority

  • O(log n) insertion of a new item

Additionally, an index maps elements to their location in the heap and is kept up to date as the heap is manipulated. As a result, pqdict also supports:

  • O(1) lookup of any item by key

  • O(log n) removal of any item

  • O(log n) updating of any item’s priority level

Documentation

Documentation is available at http://pqdict.readthedocs.org/en/latest/.

License

This module is released under the MIT license. The augmented heap implementation was adapted from the heapq module in the Python standard library, which was written by Kevin O’Connor and augmented by Tim Peters and Raymond Hettinger.

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

pqdict-1.4.0.tar.gz (87.8 kB view details)

Uploaded Source

Built Distribution

pqdict-1.4.0-py2.py3-none-any.whl (8.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file pqdict-1.4.0.tar.gz.

File metadata

  • Download URL: pqdict-1.4.0.tar.gz
  • Upload date:
  • Size: 87.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for pqdict-1.4.0.tar.gz
Algorithm Hash digest
SHA256 367dc50818f1df331ed5ef9ba9a793f7b713a1d5ea6bcccd7a72392dc8bc2097
MD5 a96935bd61be07432534520d23adfb03
BLAKE2b-256 a21458d3393644b7a576b9b6c969628ccbfd2c324561489d4301fef48538b708

See more details on using hashes here.

File details

Details for the file pqdict-1.4.0-py2.py3-none-any.whl.

File metadata

  • Download URL: pqdict-1.4.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for pqdict-1.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7c4f9d09cb867b7bfddcc3c56b74badae70c28fdeaad95df637be844103759e5
MD5 de9658d7a023e291d8a65ae8d0af3507
BLAKE2b-256 583dfcb3b29976336a0635c858ef593e9f1bfb4b8583a1f41f6456866b428097

See more details on using hashes here.

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