A python library to handle dataStructures
Project description
updated: Thursday, 03rd August 2023
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
- What's New
- Introduction
- Problem Statement
- Benefits
- Requirements
- Installation
- Usage
- Documentation
- License
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
- 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
- BinaryTree
- MinHeapTree
- ThreadedBinaryTree
- SumSegmentTree
- HuffmanTree
- RedBlackTree
Documentation
- For detailed documentation. See documentation
- (Still in progress)
License
- see 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)
Built Distribution
datastax-0.4.2-py3-none-any.whl
(66.4 kB
view details)
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 786094c911d3cdbd6806987dceb4df5cd5869d7a6fe546174700a24633879a81 |
|
MD5 | 6c779b1cfb7c95790f942e4a5b13d4be |
|
BLAKE2b-256 | b58735e03b8fa4c619033932505a7f72a929c1bb1c5410c8a6896960e909ea4a |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | c658a241c6f47ce9c412c05e6ffdce43cd15055052ab9b2b84bd7d222f71e5cd |
|
MD5 | 6e30d8ca60ee97f95974190cac083abb |
|
BLAKE2b-256 | f55cc7bad935d83e14211c51334c24a2904220f14343f7a88da5c6e451b80aac |