Skip to main content

A python library to handle dataStructures

Project description

updated: Thursday, 03rd August 2023
datastax

Simplicity meets intelligence

PyPI PyPI Downloads


dataStax

What's New?

  • Refactored Trees
  • Added Nodes SubPackage
  • Separated TreeNodes into Nodes
  • Added Tables SubPackage
  • Added Colors and ColorCodes in Utils
  • Refactored Lists
  • Removed __repr__ overrides
  • Added Exceptions in Utils
  • Added Warnings in Utils
  • Added new workflows
  • Added datastax.Wiki

Table of Contents

Introduction

  • This library offers a simple yet powerful solution for implementing common abstract data structures.
  • With a pure Python implementation, it provides representations of tree, linked list, and array-based data structures accessible through a basic command prompt interface.
  • The package includes visualization features that enhance the understanding of each data structure.
  • Students can greatly benefit from utilizing this package for their learning and educational purposes.
  • Please note that this project is currently a work in progress and undergoing active development.

Problem Statement

  • Many CS students encounter difficulties in comprehending the intricate internal architecture of complex Abstract Data Types (ADTs) during the initial stages of their B.Tech course.
  • When attempting to solve coding challenges that involve writing test cases using these ADTs, it becomes excessively burdensome to manually create these data structures from scratch.
  • Furthermore, while developing programs that implement these ADTs, numerous errors are encountered due to the inability to visualize and understand the underlying processes of these data structures.

Benefits

  • Swift installation process
  • Efficient and prompt updates
  • Minimal disk space usage due to its small size
  • No additional modules or dependencies needed
  • Developed entirely from scratch
  • Upcoming user-friendly documentation
  • Command line demonstration for easy usage

Requirements

  • Runs on latest Python 3.11+
  • (Suggesting you to always update to the latest python version)

Installation

  1. Use the python package manager pip to install datastax.
pip install datastax

Usage

Demo

  • To get a demo of the library use the following command

    • Windows:
    > py -m datastax 
    
    • Unix based systems:
    $ python3 -m datastax
    
    • Result
    Available modules are:
    1. LinkedLists
    2. Trees
    3. Arrays
    
    Usage
    > py datastax <data-structure> [data]
    Data Structures:
    ->  Trees          Hierarchical DS
    ->  linkedlists    Linear DS
    ->  arrays         Fixed Size Linear DS
    
  • Then follow as the instruction guides

> py -m datastax linkedlist 1 2 3 4
  Visuals for LinkedLists:

  1. Singly Linked List:
     HEAD                                         TAIL
 ┌─────╥────┐   ┌─────╥────┐   ┌─────╥────┐   ┌─────╥────┐
   1    ----->│  2    ----->│  3    ----->│  4    -----> NULL
 └─────╨────┘   └─────╨────┘   └─────╨────┘   └─────╨────┘


  2. Doubly Linked List:
               HEAD                                                        TAIL
         ┌────╥─────╥────┐   ┌────╥─────╥────┐   ┌────╥─────╥────┐   ┌────╥─────╥────┐
 NULL <-----    1    <------->    2    <------->    3    <------->    4    -----> NULL
         └────╨─────╨────┘   └────╨─────╨────┘   └────╨─────╨────┘   └────╨─────╨────┘
  ...

Practical Usage

  • Queue

queue

queue_output


  • BinaryTree

binaryTree

binaryTree_output


  • MinHeapTree

mht

mht_output


  • ThreadedBinaryTree

tbt

tbt_output


  • SumSegmentTree

sst

sst_output


  • HuffmanTree

hft

hft_output


  • RedBlackTree

rbt

rbt_output

Documentation

  • For detailed documentation. See documentation
  • (Still in progress)

License

Pritam, 2023

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

datastax-0.4.2.tar.gz (39.0 kB view details)

Uploaded Source

Built Distribution

datastax-0.4.2-py3-none-any.whl (66.4 kB view details)

Uploaded Python 3

File details

Details for the file datastax-0.4.2.tar.gz.

File metadata

  • Download URL: datastax-0.4.2.tar.gz
  • Upload date:
  • Size: 39.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for datastax-0.4.2.tar.gz
Algorithm Hash digest
SHA256 786094c911d3cdbd6806987dceb4df5cd5869d7a6fe546174700a24633879a81
MD5 6c779b1cfb7c95790f942e4a5b13d4be
BLAKE2b-256 b58735e03b8fa4c619033932505a7f72a929c1bb1c5410c8a6896960e909ea4a

See more details on using hashes here.

File details

Details for the file datastax-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: datastax-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 66.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for datastax-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c658a241c6f47ce9c412c05e6ffdce43cd15055052ab9b2b84bd7d222f71e5cd
MD5 6e30d8ca60ee97f95974190cac083abb
BLAKE2b-256 f55cc7bad935d83e14211c51334c24a2904220f14343f7a88da5c6e451b80aac

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