Skip to main content

This is my first try in building package

Project description

Python Data Structures

A Python package that provides implementations of common data structures such as:

  • Singly Linked List
  • Stack
  • Queue
  • Binary Tree

This package is designed to be an easy-to-use resource for anyone interested in learning or working with fundamental data structures in Python.


Features

  • Singly Linked List: A linked list where each node points to the next node.
  • Stack: A LIFO (Last In First Out) data structure where elements are added and removed from the top.
  • Queue: A FIFO (First In First Out) data structure where elements are added at the rear and removed from the front.
  • Binary Tree: A tree structure where each node has at most two children, with left and right pointers.

Installation

You can install the package using pip:

pip install python-basic-data-structures

Usage

Singly Linked List

To use the Singly Linked List:

from my_data_structures.linked_list import LinkedList

# Create a LinkedList
ll = LinkedList()

# Insert elements
ll.insertAtBeginning(10)
ll.insertAtEnd(20)
ll.insertAfter(15, 1)

# Display the linked list
ll.display()

# Sort the list
ll.bubble_sort()
ll.display()

Stack

To use the Stack:

from my_data_structures.stack import Stack

# Create a Stack
stack = Stack()

# Push elements
stack.push(10)
stack.push(20)

# Pop elements
stack.pop()

# Display the stack
stack.display()

Queue

To use the Queue:

from my_data_structures.queue import MyQueue

# Create a Queue with a size limit
queue = MyQueue(3)

# Enqueue elements
queue.enqueue(10)
queue.enqueue(20)

# Dequeue elements
queue.dequeue()

# Display the queue
queue.display()

Binary Tree

To use the Binary Tree:

from my_data_structures.binary_tree import BinaryTree

# Create a Binary Tree
bt = BinaryTree()

# Insert elements
bt.insert(10)
bt.insert(20)
bt.insert(5)

# Search for a value
bt.search(15)

# Display the tree in different orders
print(bt.inorder())
print(bt.preorder())
print(bt.postorder())

Contributing

Contributions are welcome! If you'd like to improve the project, feel free to fork the repository, make your changes, and submit a pull request. Here are a few ways you can contribute:

  • Implementing new data structures.
  • Adding tests for existing structures.
  • Improving documentation.

License

This project is licensed under the MIT License - see the LICENSE file for details.


Contact

If you have any questions or suggestions, feel free to open an issue on GitHub or contact me directly:


You can customize the content according to your needs, but this should serve as a solid base for your project's README. It includes essential sections like an introduction, installation instructions, usage examples, contributing guidelines, and contact information.

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

python_data_structures_bootcamp-0.1.2.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

File details

Details for the file python_data_structures_bootcamp-0.1.2.tar.gz.

File metadata

File hashes

Hashes for python_data_structures_bootcamp-0.1.2.tar.gz
Algorithm Hash digest
SHA256 c30b05c2c30bb8e9f8beea5cca1d8f8366abb66a56609cc07381d855179ce356
MD5 9d4677ed3191ca96329bceadcb962ad1
BLAKE2b-256 ab4bc23c3521e02d42d5513ae9980766bc9d20a5751f322a3cbd2ae8863f8c0b

See more details on using hashes here.

File details

Details for the file python_data_structures_bootcamp-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for python_data_structures_bootcamp-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9ea256363ba3266ddbc9b618a0e8977df38dbf173c38545bc9912a494f7f2436
MD5 4d8b3053e3aff0a96252379ffa614e31
BLAKE2b-256 7cc1435301c1f405c7691b05c55fefa1f5ab5c42f0f89071dfc18bb3fb3b3131

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