interval-search
interval-search provides predicate-based binary and doubling search implementations
Free software: MIT license
Documentation: https://interval-search.readthedocs.io.
import interval_search as inch
# inch.binary_search
list_ = [1, 10, 20, 500, 5000]
inch.binary_search(lambda x: list_[x] >= 20, 0, len(list_) - 1)
# -> 2
# inch.doubling_search
inch.doubling_search(lambda x: x >= 5) # -> 5
# with a lower bound to start searching at,
inch.doubling_search(lambda x: x >= 5, 10) # -> 10
# inch.interval_search
# uses binary search or doubling search
# depending on whether upper bound is specified
inch.interval_search(lambda x: list_[x] >= 20, 0, len(list_) - 1)
# -> 2
inch.interval_search(lambda x: x >= 5, 10) # -> 10
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
0.0.0 (2022-02-22)
First release on PyPI.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
interval-search-0.5.2.tar.gz
(12.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file interval-search-0.5.2.tar.gz.
File metadata
- Download URL: interval-search-0.5.2.tar.gz
- Upload date:
- Size: 12.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3259c871f46906f0e4cb96ad5db56425bfa14b2377f5d36017c426d87b7d54c3
|
|
| MD5 |
8dca8a340584efa97f93138d9f968f7c
|
|
| BLAKE2b-256 |
6bdcbf0f34fea6fdb607096701ed4522473e6ff90ef9cf73b248913ee3a560d4
|
File details
Details for the file interval_search-0.5.2-py2.py3-none-any.whl.
File metadata
- Download URL: interval_search-0.5.2-py2.py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a324fa987981e79b24b68984665e4dad50b2329d4f86c611fe75990ac9f000d
|
|
| MD5 |
50a79147928d47bd5c28fde28aad52fc
|
|
| BLAKE2b-256 |
c625d4f9579a1fc89c00446908156c2622ff54bc49309d263490dbafa286ee0f
|