Skip to main content

Basic and Moded data structures with rust backend for speed.

Project description

Unit Tests Build codecov Downloads

Overview

modstore brings the speed python lacked while implementing complex data structures. Leveraging Rust's speed, modstore brings custom data structures to decrease processing time. Apart from that, modstore offers upgraded built-in data structures such as list, dict, tuple and a few new ones like stack.

modstore started as a data structure library but now also contains algorithms such as sorting and searching.

Features

modstore currently offers the following data structures and algorithms to make your day an easy one:

For documentation on a particular topic, click on the topic.

The docs for few topics are still under works, The code itself has docstring(s) in them for ease of use.

Here are the basic importing structures for all currently available modules.

from modstore.python import (
  List,
  Stack,
  HashMap, # HashMap
  AutoHashMap, # HashTable
  SingleLinkNode, # Singly linked node object
  LinkedListOne, # Singly linked list wrapper/creator
  LRUCache, # LRU Cache implementation using LinkedListOne.
  DoubleLinkNode, # Doubly linked node object
  LinkedListTwo, # Doubly linked list wrapper/creator.
  MultiLinkNode, # Coming soon
  LinkedListMulti, # Coming soon
)
from modstore.rust import BlockChain, DAG
from modstore.algorithms.searching import Search, SearchObject
from modstore.algorithms.sorting import Sort, SortObject

Categories

  • Algorithms

    modstore contains a hell lot of detailed algorithms.

    Currently available:

    • Searching

      • Linear Search
      • Sentinel Linear Search
      • Binary Search
      • Meta Binary Search (One Sided Binary Search)
      • Ubiquitous Binary Search
      • Ternary Search
      • Jump Search
      • Interpolation Search
      • Exponential Search
      • Fibonacci search
    • Sorting

      • Selection Sort
      • Bubble Sort
      • Insertion Sort
      • Merge Sort
      • Quick Sort
      • Heap Sort
      • Counting Sort
      • Radix Sort
      • Bucket Sort
      • Tim Sort
      • Bingo Sort
      • Shell Sort
      • Comb Sort
      • Pigeonhole Sort
      • Cycle Sort
      • Cocktail Sort
      • Strand Sort
      • Sleep Sort
      • Pancake Sort
      • Bogo Sort
      • Gnome Sort
      • Stooge Sort
      • Tag Sort
      • Brick Sort
      • Three Way Merge Sort
  • Rust powered data structures

    modstore offers the following rust powered data structures:

    • BlockChain: Using Rust's performance, create tamper proof blockchain data structure of your required difficulty. Search through the blockchain and retrieve data in their original form as provided.

    • DAG: Directed Acyclic Graphs are graphs with no cycles, used in certain blockchain variants like IOTA. Create, manipulate and store Network like data in DAG ledgers.

  • Upgraded Python built-ins

    modstore has these upgraded built-ins:

    • [List]
  • New Python data structures

    • [Stack]

Install from scratch

Make sure you have cargo installed (Rust) and VS Build Tools for C++ (for windows)

git clone https://github.com/d33p0st/modstore.git
python -m pip install --upgrade pip
pip install maturin
cd modstore
maturin develop
pip install .

Issues

Feel free to submit any issues here.

Pull Requests

Submit pull requests here.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

modstore-2.0.0-cp313-cp313-win_amd64.whl (807.7 kB view details)

Uploaded CPython 3.13Windows x86-64

modstore-2.0.0-cp313-cp313-manylinux_2_34_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

modstore-2.0.0-cp313-cp313-macosx_11_0_arm64.whl (904.7 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

modstore-2.0.0-cp312-cp312-win_amd64.whl (807.4 kB view details)

Uploaded CPython 3.12Windows x86-64

modstore-2.0.0-cp312-cp312-manylinux_2_34_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

modstore-2.0.0-cp312-cp312-macosx_11_0_arm64.whl (904.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

modstore-2.0.0-cp311-cp311-win_amd64.whl (807.8 kB view details)

Uploaded CPython 3.11Windows x86-64

modstore-2.0.0-cp311-cp311-manylinux_2_34_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

modstore-2.0.0-cp311-cp311-macosx_11_0_arm64.whl (906.2 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

modstore-2.0.0-cp310-cp310-win_amd64.whl (807.9 kB view details)

Uploaded CPython 3.10Windows x86-64

modstore-2.0.0-cp310-cp310-manylinux_2_34_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

modstore-2.0.0-cp310-cp310-macosx_11_0_arm64.whl (905.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

modstore-2.0.0-cp39-cp39-win_amd64.whl (808.1 kB view details)

Uploaded CPython 3.9Windows x86-64

modstore-2.0.0-cp39-cp39-manylinux_2_34_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

modstore-2.0.0-cp39-cp39-macosx_11_0_arm64.whl (906.8 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

modstore-2.0.0-cp38-cp38-win_amd64.whl (808.1 kB view details)

Uploaded CPython 3.8Windows x86-64

modstore-2.0.0-cp38-cp38-manylinux_2_34_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.34+ x86-64

modstore-2.0.0-cp38-cp38-macosx_11_0_arm64.whl (906.7 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

File details

Details for the file modstore-2.0.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 bc5b0ca35d89760a4593cc4a2b0cc52cede82265efbdd010def136bf565f22a8
MD5 9c3d799c9118f746ef7fcd405c3dc417
BLAKE2b-256 383fd6a488849ce3f45c58e2a69a768a1fc0f516d05b9416c2ebdacc71c1bebe

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 bf115ef7d3e84b1d9088f7429058149737f36d5350eab7a1db89f9cb20ccdfb0
MD5 2ccc2cf2d38864f8d9e57fe0cf153607
BLAKE2b-256 c5692e04164a2a981186cd44950ac82a032d3a8be97fdf29bcde8cd2ec122c25

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 32e92956f6eaad0476f2ba92568ce956ccbd420d3ba1f7038b5f82c4e7edaf0c
MD5 c9d3664dcd10fbc7369d98bf6173c268
BLAKE2b-256 9b1498e7f526403a3ac9d514d952ad729cb5a337bcf544f9efeb2da13524721f

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 7fb762c9f7cc9995286c2271a41b290dfb9a48899d51e803bef20010c5b54ed3
MD5 0eb0f0768289b625ed492d83b1c353f9
BLAKE2b-256 1f5caeef47b658ea7ad97d41c9720bf4ccd462770d822d9b0b501b301c5076cc

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f3c15f1ecbf42962c9e52e43595dbf636d11713851a2c88913b90bc1a9c0af6f
MD5 14aa50fc169de66025fc1686cb782560
BLAKE2b-256 1838f8aa5a1627c1432bfc90f2db80ea03bd6f601ea0257874f8cda42478dbc5

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 639fc5b2cb957f6c9f519e82c681965ccbda18eb80c32737dfdacfc2bd42c7f1
MD5 f570686f8b265f0b95b4e4ade806c53d
BLAKE2b-256 8068aa4e5b761e3763767a8c1c4e020e9f40df5cb9b6362797fb276578a96921

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 2af0c610e655454f686cbef254c2c037ca348f8a87d0b9f7e037b19e8d9632c9
MD5 16280fdb8539a1a0f1e31fc7ef58b88e
BLAKE2b-256 785aaece92f21ea18d98775d0f804ebae1c78aee02f7c725facbc52b4b083c8b

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 44ca39b11baa7216e1ea9b0c8bfd60ea4899266206c5a600b437e2afcd7898cc
MD5 d1f273e5c74b03681388ecd7ff1646ec
BLAKE2b-256 b44f695202b2a3d204d73d5661b0566ef7fd248d93f4ef2b82c05a4204740b5d

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ab3b3e0a785b3d8720cd8c191b7fabc969259119b454dc1ee5c45c85cc6e0979
MD5 c81821e415da73a484cbc1c40535d2e6
BLAKE2b-256 f87a9edc75f940a1d27a040fc5b5a684b024beaf3b34d3b5e487f4d15cdfa33b

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b41dde653b6d8341dd0e636606752cfa104a8cda28d3ead64b405b385195c16f
MD5 03eb6adcef10f6b65f6745308315f6c8
BLAKE2b-256 6867a66175c4de69ac376f0fbb62f1f4a10b1a01fa5ee32383b98a43e1e9839e

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 e9d8c03bf027f10d4efdef5bf20aff393e37a8c92cebb331ee06de41a91301ef
MD5 06466142315998378ea1820d6d7f7af8
BLAKE2b-256 bafba32907956c2451e8f718313c4cd1c0103e0e6fedfe541ae9cdc807d7a053

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 342c84abff757a924a8445992b341156bd042cd05c2db6d84ad2e913794368a6
MD5 b6b68f8028e9e8be0917b41b7f8dff56
BLAKE2b-256 9f93142ed4fffb365015a5a6869a508dbb6e7be349af869c7c24fdf11154ce9b

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: modstore-2.0.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 808.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for modstore-2.0.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 9b1fc955549441e18acd960aa1c36aeffc7e0e22748200fe8be8d704577d5849
MD5 76784e2985eb986c4eac2b6ed84dfaed
BLAKE2b-256 439376892b9974dbc2ac7fcb6cfd0bd74bb0671270f2a4422570883e7d07b949

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 733992ef6afa0de3b96298d238d5c1859943ca4ce97ce88197491421d221870e
MD5 bc5bb39e2d4a1388967366b325c41976
BLAKE2b-256 36e47f535a39b72a6e321503f42383234de91b7d3c60d3b91f95f8c3afca4916

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1580d4b06f1f99cc88797050882d47b2eb9f3533537a75ea6dcd3920bf4ebe7f
MD5 db7ad6055221511afcd4bc5cbe344e28
BLAKE2b-256 87ccc4ff8f14fac161f45a5a890bad3185981e7d25fff4ef5f1ff7f9d5dcd0ca

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: modstore-2.0.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 808.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.7.4

File hashes

Hashes for modstore-2.0.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 917a9bd2b5986ed445c85c9507820257a3d3c96a3318675ed5b5b1c693caaa7a
MD5 66c3be7aafe4bf0dcfb8b76eb8c159bd
BLAKE2b-256 9247b3c471237f0a61b045d005cb291e1c3ad270cf1376bf4c267cd716e4d2e3

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp38-cp38-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp38-cp38-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 98eff6dead7affbd1d465dbf2b412e445318f3fd850ef1355b682b863187856e
MD5 4b9c2cbad2f506e7134650bc699c13c6
BLAKE2b-256 70c56e7fb96525e80cf9c30a59394e4a3f432caebde3a41390dd89c19a949c5d

See more details on using hashes here.

File details

Details for the file modstore-2.0.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for modstore-2.0.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8730d9e60bd2dbd5088f1fe493f6ae0b4878d4e64fb6d86ef1f9d0f93a1f36f1
MD5 eb38e4e072044a100751c0d4a7330955
BLAKE2b-256 12b904770e78f3786e03eaeebefb8e28b727294b091977f69680906bf8a2b905

See more details on using hashes here.

Supported by

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