6 files were added to this release more than 14 days after its initial publication. Inspect the release files before installing.
Sparse Indexed Doubly Linked List (SIDLL)
Introduction
What is it?
A Sparse Indexed Doubly Linked List (SIDLL) is a linked list that is linked in both directions and which has indices (or pointers) distributed throughout the list which enables O(log p + k) worst case time complexity for inserts, deletes and lookups where p is the size of the indices/pointers and k is the maximum distance travelled between the pointer and a given node. Sparse distribution gives the user choice to trade-off between lookup times (faster if the interpointer distance is small) and memory (less if the interpointer distance is large).
What can it be used for?
Given that it is always sorted by key, it can be used to keep track of metrics like the streaming mean, median, head/tail as well as min/max (and their associated values).
Languages
Python, C++
Methods
- insertNode(key,value)
- deleteNode(key)
- getMinKey()
- getMaxKey()
- getMean()
- getMedian()
- getLength()
- head(length:optional)
- tail(length:optional)
- keyExists(key)
- getValue(key,index:optional)
- setInterpointerDistance(distance)
Installing
Python
There are installers for Windows and manylinux works with multiple Linux distros. For example, for Python 3.8 on CentOS:
pip install sidll
C++
The .h, .cpp files and CMakeLists.txt are in the SIDLL_C++ directory.
Example
Python
import sidll
import random
s = sidll.SIDLL()
s.setVerbosity(0)
s.setInterpointerDistance(10)
deleteList = []
print("-" * 25)
print("Inserting...")
for i in range(0,100):
randKey = random.uniform(1,100000)
randVal = random.uniform(1,100000)
s.insertNode(randKey,0)
deleteList.append(randKey)
print("Length:%d" %s.getLength())
print("MinKey:%f" %s.getMinKey())
print("MaxKey:%f" %s.getMaxKey())
print("Median:%f" %s.getMedian())
print("Mean:%f" %s.getMean())
print(s.head())
print(s.tail())
print("-" * 25)
print("Deleting...")
for i in range(0,50):
if not deleteList:
break
keyToDelete = deleteList.pop()
s.deleteNode(keyToDelete)
print("Length:%d" %s.getLength())
print("MinKey:%f" %s.getMinKey())
print("MaxKey:%f" %s.getMaxKey())
print("Median:%f" %s.getMedian())
print("Mean:%f" %s.getMean())
print(s.head())
print(s.tail())
print(dir(s))
Change log
Version 0.15: First PyPI version.
Version 0.16: Added an sdist repo.
Metadata
Release files for sidll 0.17
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Files added late
6 files were uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release files before installing.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sidll-0.17.tar.gz | 12.3 kB | Details |
Built distributions (wheels)
Total release size: 4.4 MB
Release files / sidll-0.17.tar.gz
| Download URL | sidll-0.17.tar.gz |
|---|---|
| Size | 12.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
aec7d82c169dfa23bd2d51b07a6cead5f6a7f9ca801beb5bcfcdabb53648d801
|
|
BLAKE2b-256 checksum How to use checksums |
00e9e040e1eb9b143f9b05ac5de3fd77f3282adb8b9daf68b90cf49753c3c6a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-pp311-pypy311_pp73-win_amd64.whl
| Download URL | sidll-0.17-pp311-pypy311_pp73-win_amd64.whl |
|---|---|
| Size | 233.2 kB |
| Tags | PyPy 3.11 PyPy 3.11 7.3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
64d1e572cf1ed366ddb41a27fa34229c12c76a12ee15e8fb4f1d6c18977331d2
|
|
BLAKE2b-256 checksum How to use checksums |
66b6e7815db771f7592ed9e9351cc5d42e5cbc8f2e0a2630c80d63fb6146049f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 134.8 kB |
| Tags | Linux glibc 2.17+ x86-64 PyPy 3.11 PyPy 3.11 7.3 |
|
SHA-256 checksum How to use checksums |
00016994462a544d4ef10c7632d6996c95b51ad1291ddd74ffd7bad60e476c3b
|
|
BLAKE2b-256 checksum How to use checksums |
b42fc1fafdcd18e21c737b8b4da5f3e3159111a669ad80003f160bd700234607
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-pp310-pypy310_pp73-win_amd64.whl
| Download URL | sidll-0.17-pp310-pypy310_pp73-win_amd64.whl |
|---|---|
| Size | 232.3 kB |
| Tags | PyPy 3.10 PyPy 3.10 7.3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
9263f7742e98e11f11432a8317773aa39fcc20bb867bb04e5b03121bb13a3597
|
|
BLAKE2b-256 checksum How to use checksums |
7c99aecb05bebad5114af3dc7abdffefef07dfaf49d851d9fba1c94d1c8cbcf2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 133.1 kB |
| Tags | Linux glibc 2.17+ x86-64 PyPy 3.10 PyPy 3.10 7.3 |
|
SHA-256 checksum How to use checksums |
1d1ac908c2ab412d75f1ca60d764f0f294fd183d9720030834b9af645f7c6222
|
|
BLAKE2b-256 checksum How to use checksums |
9dbaf3a27a4b8fcb2c78b12efdd8021ec2ee3cccef69c5be27a73c8597535175
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-pp39-pypy39_pp73-win_amd64.whl
| Download URL | sidll-0.17-pp39-pypy39_pp73-win_amd64.whl |
|---|---|
| Size | 232.4 kB |
| Tags | PyPy 3.9 PyPy 3.9 7.3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
570687ab198cc4b7fa1c0583578f4d73d67418e768c8ec5819b53c421c561b21
|
|
BLAKE2b-256 checksum How to use checksums |
56c8fae6a0af9d5ff952c2c2406295908b91f250c9036a27d597ac1bc8dc442a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 132.9 kB |
| Tags | Linux glibc 2.17+ x86-64 PyPy 3.9 PyPy 3.9 7.3 |
|
SHA-256 checksum How to use checksums |
3e9bfe6d24cde326bd1966e4c3807a8c38d3efb7b69273bb2c39a2f5527d6a17
|
|
BLAKE2b-256 checksum How to use checksums |
01639d0b554f8035c0e5d715f0e68e0cd4848568e776c599f39deabed5007c7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp314-cp314-macosx_11_0_universal2.whl
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | sidll-0.17-cp314-cp314-macosx_11_0_universal2.whl |
|---|---|
| Size | 184.4 kB |
| Tags | CPython 3.14 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
5a4ca13d56e594cf432aa2fc70bb91ade3e3aa578f688feafb4ec571a344547c
|
|
BLAKE2b-256 checksum How to use checksums |
761b84069cf9f13914c83357637ebf748a47627dc22a1a6d44025c352cb5b35d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp313-cp313-win_amd64.whl
| Download URL | sidll-0.17-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 235.5 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
939f408c9db548c7141b03862a7c7e7ded7861906079a0609a3a1a12bed87beb
|
|
BLAKE2b-256 checksum How to use checksums |
8a2fa97cdd3cded3f06d223e62d90d1c8d84bfa3fb29abc598426d6601838e67
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 135.3 kB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
72aa3d6674ba7d759ab6925e125bfc90101aa94c3745efb2a59b288e0eb53182
|
|
BLAKE2b-256 checksum How to use checksums |
52b61fc89f19ee392a367263e77babb4075fee5c9a9a2944d22cac8944dd7794
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp313-cp313-macosx_11_0_universal2.whl
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | sidll-0.17-cp313-cp313-macosx_11_0_universal2.whl |
|---|---|
| Size | 184.1 kB |
| Tags | CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
aa61a920c80245933f5d760cd9251c6e86d47f8d3a4b861c7abde3775ab7f3ab
|
|
BLAKE2b-256 checksum How to use checksums |
87015335b8fad25b46fd41d6366d3e5598db9a2705aa1d4410fb56d676bbf95b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp312-cp312-win_amd64.whl
| Download URL | sidll-0.17-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 235.5 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d36381c1c3bfdcfa155fd492382707eb6b614ac88d71667094e02dcb2a5e414b
|
|
BLAKE2b-256 checksum How to use checksums |
9af2400ea2990e2ef5b1477dc43e3b7766c097429abf66e18a67f7a9e6fb767d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 135.0 kB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
2e3fd7cd7816788d7d183d1ce24f73b702b255ba3658f1f2c3d4e2227d222abe
|
|
BLAKE2b-256 checksum How to use checksums |
c0b62699c08ea8aef348c3576da38fda6c29731294088cb18575c5e626928bcd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp312-cp312-macosx_11_0_universal2.whl
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | sidll-0.17-cp312-cp312-macosx_11_0_universal2.whl |
|---|---|
| Size | 183.9 kB |
| Tags | CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
0f5c73c48c9a848cb0dd384ae7abb463fd25fa2d0e0b446d757953ab74fde63f
|
|
BLAKE2b-256 checksum How to use checksums |
f4f51b32bbc6147d2ca4a525c1b55788a41e89430697d9570f150d3f743beb72
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp311-cp311-win_amd64.whl
| Download URL | sidll-0.17-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 234.4 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
14b6344847dea906ff78d4d3e23cbd068bea3a901c447c8e1015af1e241fb3ca
|
|
BLAKE2b-256 checksum How to use checksums |
fdea2114118ef51784586a2a43f7416b59268cb6e51fa95ab168268a5da519e9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 134.6 kB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
1aeb667f433c5075e996a0867ffcf2e32b70d58fb06ccbb51c105dfde7b446b7
|
|
BLAKE2b-256 checksum How to use checksums |
a4c5b39a320c07ecc66654509f0af7571075a23aa9c2a794a1c61ca40396dbaa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp311-cp311-macosx_11_0_universal2.whl
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | sidll-0.17-cp311-cp311-macosx_11_0_universal2.whl |
|---|---|
| Size | 182.3 kB |
| Tags | CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
f38b817d1e1e755a0f0b2f5a9c3eeef9f739edd399edca29e4ebd7f773f23b83
|
|
BLAKE2b-256 checksum How to use checksums |
15b4d3f4c32cf6bee3b7a53ace06f1546479cedf489e6641c2579c3157855c70
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp310-cp310-win_amd64.whl
| Download URL | sidll-0.17-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 233.6 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
c20427d423ece0b9e9033be52ee3e1f3e2ce146a608fa9c55735b52394d223f8
|
|
BLAKE2b-256 checksum How to use checksums |
5fa5db4c32989e88c93f401bd185f19f061efb19a661207da76558d2ccf5727e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 133.1 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
cb7fdfbebf71f7f231d4d7f640b22537f53c6d2b122958dceab64e9231fb83d2
|
|
BLAKE2b-256 checksum How to use checksums |
b947c16254fdcecf159064b3ef816f0691c6e0198647e1b62baddb6e5ec4d60f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp310-cp310-macosx_11_0_universal2.whl
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | sidll-0.17-cp310-cp310-macosx_11_0_universal2.whl |
|---|---|
| Size | 179.6 kB |
| Tags | CPython 3.10 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
7a6c1050d02ab6732506fb79d13863ee278d629a08ab7d956b5d88e19e74050f
|
|
BLAKE2b-256 checksum How to use checksums |
18e452606cfc9794c91e19eccf86a73b8e39b68088c874451afb1295c36f08b9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp39-cp39-win_amd64.whl
| Download URL | sidll-0.17-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 232.6 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
bf03de74bd9373c8f94fb18378757a725e5e03ad731d886bf13ea7c95924bea1
|
|
BLAKE2b-256 checksum How to use checksums |
9337eba1200b8f6a62cd8cab3e6766190372c8b7b0378c4d2b6b8f2a583e87c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 133.4 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
737a0568746e80b86bcfcf7b49198d6a96277356a917aadb6da3c742ff0d2b69
|
|
BLAKE2b-256 checksum How to use checksums |
c63aed89e340a9ffd87f5bce4198b3adc884c4a02d93a8f65c0f4bb8019584f3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp39-cp39-macosx_11_0_universal2.whl
File added late
This file was uploaded more than 14 days after the first file in this release.
While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.
We recommend inspecting the release file before installing.
| Download URL | sidll-0.17-cp39-cp39-macosx_11_0_universal2.whl |
|---|---|
| Size | 179.8 kB |
| Tags | CPython 3.9 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
679f2f632da1348e8228499f6ac7e7bffaea829f7b460961f798abf9b4eb559f
|
|
BLAKE2b-256 checksum How to use checksums |
9c31cbce197f48ce7b51ec495e66fb9b10c3e95b8a87c6212ff5e179272b7e42
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp38-cp38-win_amd64.whl
| Download URL | sidll-0.17-cp38-cp38-win_amd64.whl |
|---|---|
| Size | 233.8 kB |
| Tags | CPython 3.8 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
60dcb18d99dc500912e58df678989260eed048edc2938891df86ade4a84da6bb
|
|
BLAKE2b-256 checksum How to use checksums |
289d1c31d4533759a4621a7e41326a787b0caa3824899d8382d9b3a29515acc5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|
Release files / sidll-0.17-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sidll-0.17-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 133.1 kB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
c9ebadb3ce94ea31daec44e7700f8e6ec9794ab4da2b5a80799528da13af19be
|
|
BLAKE2b-256 checksum How to use checksums |
02851ec0bff5b53cdb6f6ad2b9ba86f176e98d14efb310c544e667066e4f1592
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.8.0
|