Skip to main content

Module created to facilitate the creation and use of data structures

Project description

datastructs

Module created to facilitate the creation and use of data structures

Build Status Updates Python 3

Installation

pip install datastructs

How to Use

Binary Tree

>>> from datastructs import BinaryTree
>>> binary_tree = BinaryTree([1, 2, 3, 4])
>>> binary_tree.print()
1 2 3 4 
>>> binary_tree.add([5, 6, 7, 8])
>>> binary_tree.print()
1 2 3 4 5 6 7 8 
>>> binary_tree.print(node=binary_tree.root, order='lvl')
1 2 3 4 5 6 7 8 
>>> binary_tree.print('pre')
1 2 4 8 5 3 6 7 
>>> binary_tree.print('in')
8 4 2 5 1 6 3 7 
>>> binary_tree.print('pos')
8 4 5 2 6 7 3 1 
>>> BinaryTree().print(node=binary_tree.root.left)
2 4 5 8 
>>> BinaryTree().print(node=binary_tree.root.left, order='in')
8 4 2 5 

Linked List

>>> from datastructs import LinkedList
>>> linked_list = LinkedList([1, 2, 3, 4])
>>> linked_list.print()
1->2->3->4
>>> linked_list.add([5, 6, 7, 8])
>>> linked_list.print()
1->2->3->4->5->6->7->8
>>> LinkedList().print(linked_list.head.next)
2->3->4->5->6->7->8

How to contribute

All code follows PEP8, except for the line length, which accepts 120 characters.

  1. Make the project fork and clone the project: git clone git@github.com:<your_user>/datastructs.git
  2. Install pipenv: pip install pipenv
  3. Install the dependencies for dev: pipenv install -d
  4. Develop the feature with tests
  5. Run the tests locally: pipenv run pytest
  6. Send the pull request with tests in a single commit
  7. Submit the PR for review
  8. After reviewed and corrected, the PR will be accepted and the lib post in PyPi

Project details


Download files

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

Files for datastructs, version 0.2.2
Filename, size File type Python version Upload date Hashes
Filename, size datastructs-0.2.2.tar.gz (5.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page